home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 60 / IOPROG_60.ISO / soft / c++ / gsl-1.1.1-setup.exe / {app} / src / cblas / test_trmm.c < prev    next >
Encoding:
C/C++ Source or Header  |  2002-04-18  |  124.6 KB  |  3,948 lines

  1. #include <gsl/gsl_test.h>
  2. #include <gsl/gsl_ieee_utils.h>
  3. #include <gsl/gsl_math.h>
  4. #include <gsl/gsl_cblas.h>
  5.  
  6. #include "tests.h"
  7.  
  8. void
  9. test_trmm (void) {
  10. const double flteps = 1e-4, dbleps = 1e-6;
  11.   {
  12.    int order = 101;
  13.    int side = 141;
  14.    int uplo = 121;
  15.    int trans = 111;
  16.    int diag = 131;
  17.    int M = 2;
  18.    int N = 3;
  19.    float alpha = 1.0f;
  20.    float A[] = { 0.565f, 0.967f, -0.969f, 0.184f };
  21.    int lda = 2;
  22.    float B[] = { 0.842f, -0.918f, -0.748f, -0.859f, -0.463f, 0.292f };
  23.    int ldb = 3;
  24.    float B_expected[] = { -0.354923f, -0.966391f, -0.140256f, -0.158056f, -0.085192f, 0.053728f };
  25.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  26.    {
  27.      int i;
  28.      for (i = 0; i < 6; i++) {
  29.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1670)");
  30.      }
  31.    };
  32.   };
  33.  
  34.  
  35.   {
  36.    int order = 101;
  37.    int side = 141;
  38.    int uplo = 121;
  39.    int trans = 111;
  40.    int diag = 132;
  41.    int M = 2;
  42.    int N = 3;
  43.    float alpha = 1.0f;
  44.    float A[] = { -0.748f, 0.548f, 0.245f, 0.761f };
  45.    int lda = 2;
  46.    float B[] = { 0.349f, -0.552f, -0.682f, -0.71f, 0.475f, -0.59f };
  47.    int ldb = 3;
  48.    float B_expected[] = { -0.04008f, -0.2917f, -1.00532f, -0.71f, 0.475f, -0.59f };
  49.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  50.    {
  51.      int i;
  52.      for (i = 0; i < 6; i++) {
  53.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1671)");
  54.      }
  55.    };
  56.   };
  57.  
  58.  
  59.   {
  60.    int order = 101;
  61.    int side = 141;
  62.    int uplo = 122;
  63.    int trans = 111;
  64.    int diag = 131;
  65.    int M = 2;
  66.    int N = 3;
  67.    float alpha = 1.0f;
  68.    float A[] = { 0.788f, 0.617f, -0.998f, -0.97f };
  69.    int lda = 2;
  70.    float B[] = { -0.4f, 0.773f, 0.074f, -0.388f, 0.825f, -0.608f };
  71.    int ldb = 3;
  72.    float B_expected[] = { -0.3152f, 0.609124f, 0.058312f, 0.77556f, -1.5717f, 0.515908f };
  73.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  74.    {
  75.      int i;
  76.      for (i = 0; i < 6; i++) {
  77.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1672)");
  78.      }
  79.    };
  80.   };
  81.  
  82.  
  83.   {
  84.    int order = 101;
  85.    int side = 141;
  86.    int uplo = 122;
  87.    int trans = 111;
  88.    int diag = 132;
  89.    int M = 2;
  90.    int N = 3;
  91.    float alpha = 1.0f;
  92.    float A[] = { 0.01f, 0.387f, -0.953f, -0.374f };
  93.    int lda = 2;
  94.    float B[] = { 0.364f, 0.09f, 0.588f, -0.263f, 0.584f, 0.463f };
  95.    int ldb = 3;
  96.    float B_expected[] = { 0.364f, 0.09f, 0.588f, -0.609892f, 0.49823f, -0.097364f };
  97.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  98.    {
  99.      int i;
  100.      for (i = 0; i < 6; i++) {
  101.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1673)");
  102.      }
  103.    };
  104.   };
  105.  
  106.  
  107.   {
  108.    int order = 102;
  109.    int side = 141;
  110.    int uplo = 121;
  111.    int trans = 111;
  112.    int diag = 131;
  113.    int M = 2;
  114.    int N = 3;
  115.    float alpha = 1.0f;
  116.    float A[] = { -0.586f, -0.426f, 0.765f, -0.239f };
  117.    int lda = 2;
  118.    float B[] = { -0.673f, -0.724f, 0.217f, -0.672f, -0.378f, -0.005f };
  119.    int ldb = 2;
  120.    float B_expected[] = { -0.159482f, 0.173036f, -0.641242f, 0.160608f, 0.217683f, 0.001195f };
  121.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  122.    {
  123.      int i;
  124.      for (i = 0; i < 6; i++) {
  125.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1674)");
  126.      }
  127.    };
  128.   };
  129.  
  130.  
  131.   {
  132.    int order = 102;
  133.    int side = 141;
  134.    int uplo = 121;
  135.    int trans = 111;
  136.    int diag = 132;
  137.    int M = 2;
  138.    int N = 3;
  139.    float alpha = 1.0f;
  140.    float A[] = { -0.668f, 0.962f, 0.515f, 0.292f };
  141.    int lda = 2;
  142.    float B[] = { -0.145f, -0.337f, 0.718f, -0.866f, -0.454f, -0.439f };
  143.    int ldb = 2;
  144.    float B_expected[] = { -0.318555f, -0.337f, 0.27201f, -0.866f, -0.680085f, -0.439f };
  145.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  146.    {
  147.      int i;
  148.      for (i = 0; i < 6; i++) {
  149.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1675)");
  150.      }
  151.    };
  152.   };
  153.  
  154.  
  155.   {
  156.    int order = 102;
  157.    int side = 141;
  158.    int uplo = 122;
  159.    int trans = 111;
  160.    int diag = 131;
  161.    int M = 2;
  162.    int N = 3;
  163.    float alpha = 1.0f;
  164.    float A[] = { -0.125f, -0.676f, 0.181f, 0.741f };
  165.    int lda = 2;
  166.    float B[] = { 0.354f, -0.366f, 0.455f, 0.134f, -0.564f, -0.303f };
  167.    int ldb = 2;
  168.    float B_expected[] = { -0.04425f, -0.51051f, -0.056875f, -0.208286f, 0.0705f, 0.156741f };
  169.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  170.    {
  171.      int i;
  172.      for (i = 0; i < 6; i++) {
  173.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1676)");
  174.      }
  175.    };
  176.   };
  177.  
  178.  
  179.   {
  180.    int order = 102;
  181.    int side = 141;
  182.    int uplo = 122;
  183.    int trans = 111;
  184.    int diag = 132;
  185.    int M = 2;
  186.    int N = 3;
  187.    float alpha = 1.0f;
  188.    float A[] = { -0.162f, 0.542f, -0.839f, -0.935f };
  189.    int lda = 2;
  190.    float B[] = { 0.216f, 0.766f, -0.228f, -0.097f, 0.205f, 0.875f };
  191.    int ldb = 2;
  192.    float B_expected[] = { 0.216f, 0.883072f, -0.228f, -0.220576f, 0.205f, 0.98611f };
  193.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  194.    {
  195.      int i;
  196.      for (i = 0; i < 6; i++) {
  197.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1677)");
  198.      }
  199.    };
  200.   };
  201.  
  202.  
  203.   {
  204.    int order = 101;
  205.    int side = 142;
  206.    int uplo = 121;
  207.    int trans = 111;
  208.    int diag = 131;
  209.    int M = 2;
  210.    int N = 3;
  211.    float alpha = 1.0f;
  212.    float A[] = { -0.353f, -0.854f, -0.502f, 0.591f, -0.934f, -0.729f, 0.063f, 0.352f, 0.126f };
  213.    int lda = 3;
  214.    float B[] = { 0.2f, -0.626f, -0.694f, -0.889f, -0.251f, -0.42f };
  215.    int ldb = 3;
  216.    float B_expected[] = { -0.0706f, 0.413884f, 0.26851f, 0.313817f, 0.99364f, 0.576337f };
  217.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  218.    {
  219.      int i;
  220.      for (i = 0; i < 6; i++) {
  221.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1678)");
  222.      }
  223.    };
  224.   };
  225.  
  226.  
  227.   {
  228.    int order = 101;
  229.    int side = 142;
  230.    int uplo = 121;
  231.    int trans = 111;
  232.    int diag = 132;
  233.    int M = 2;
  234.    int N = 3;
  235.    float alpha = 1.0f;
  236.    float A[] = { -0.864f, -0.046f, -0.755f, 0.12f, 0.525f, 0.917f, 0.571f, -0.098f, -0.226f };
  237.    int lda = 3;
  238.    float B[] = { -0.905f, -0.296f, -0.927f, -0.813f, 0.624f, -0.366f };
  239.    int ldb = 3;
  240.    float B_expected[] = { -0.905f, -0.25437f, -0.515157f, -0.813f, 0.661398f, 0.820023f };
  241.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  242.    {
  243.      int i;
  244.      for (i = 0; i < 6; i++) {
  245.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1679)");
  246.      }
  247.    };
  248.   };
  249.  
  250.  
  251.   {
  252.    int order = 101;
  253.    int side = 142;
  254.    int uplo = 122;
  255.    int trans = 111;
  256.    int diag = 131;
  257.    int M = 2;
  258.    int N = 3;
  259.    float alpha = 1.0f;
  260.    float A[] = { -0.69f, -0.927f, -0.281f, -0.918f, -0.527f, -0.652f, -0.393f, -0.954f, 0.651f };
  261.    int lda = 3;
  262.    float B[] = { -0.587f, 0.788f, -0.629f, -0.444f, 0.515f, 0.081f };
  263.    int ldb = 3;
  264.    float B_expected[] = { -0.071157f, 0.18479f, -0.409479f, -0.198243f, -0.348679f, 0.052731f };
  265.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  266.    {
  267.      int i;
  268.      for (i = 0; i < 6; i++) {
  269.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1680)");
  270.      }
  271.    };
  272.   };
  273.  
  274.  
  275.   {
  276.    int order = 101;
  277.    int side = 142;
  278.    int uplo = 122;
  279.    int trans = 111;
  280.    int diag = 132;
  281.    int M = 2;
  282.    int N = 3;
  283.    float alpha = 1.0f;
  284.    float A[] = { -0.082f, -0.077f, 0.811f, 0.852f, 0.224f, 0.443f, -0.509f, 0.171f, 0.986f };
  285.    int lda = 3;
  286.    float B[] = { -0.982f, 0.388f, -0.493f, -0.497f, -0.605f, 0.433f };
  287.    int ldb = 3;
  288.    float B_expected[] = { -0.400487f, 0.303697f, -0.493f, -1.23286f, -0.530957f, 0.433f };
  289.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  290.    {
  291.      int i;
  292.      for (i = 0; i < 6; i++) {
  293.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1681)");
  294.      }
  295.    };
  296.   };
  297.  
  298.  
  299.   {
  300.    int order = 102;
  301.    int side = 142;
  302.    int uplo = 121;
  303.    int trans = 111;
  304.    int diag = 131;
  305.    int M = 2;
  306.    int N = 3;
  307.    float alpha = 1.0f;
  308.    float A[] = { 0.97f, -0.666f, 0.066f, -0.176f, 0.402f, 0.286f, -0.703f, 0.962f, 0.912f };
  309.    int lda = 3;
  310.    float B[] = { -0.644f, -0.97f, 0.814f, -0.777f, 0.812f, 0.254f };
  311.    int ldb = 2;
  312.    float B_expected[] = { -0.62468f, -0.9409f, 0.440572f, -0.141634f, 1.97634f, 0.166084f };
  313.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  314.    {
  315.      int i;
  316.      for (i = 0; i < 6; i++) {
  317.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1682)");
  318.      }
  319.    };
  320.   };
  321.  
  322.  
  323.   {
  324.    int order = 102;
  325.    int side = 142;
  326.    int uplo = 121;
  327.    int trans = 111;
  328.    int diag = 132;
  329.    int M = 2;
  330.    int N = 3;
  331.    float alpha = 1.0f;
  332.    float A[] = { 0.714f, 0.468f, 0.859f, -0.547f, 0.076f, 0.542f, 0.512f, -0.987f, -0.167f };
  333.    int lda = 3;
  334.    float B[] = { -0.238f, -0.336f, 0.402f, 0.945f, -0.242f, -0.062f };
  335.    int ldb = 2;
  336.    float B_expected[] = { -0.238f, -0.336f, 0.532186f, 1.12879f, -0.76063f, -1.16675f };
  337.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  338.    {
  339.      int i;
  340.      for (i = 0; i < 6; i++) {
  341.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1683)");
  342.      }
  343.    };
  344.   };
  345.  
  346.  
  347.   {
  348.    int order = 102;
  349.    int side = 142;
  350.    int uplo = 122;
  351.    int trans = 111;
  352.    int diag = 131;
  353.    int M = 2;
  354.    int N = 3;
  355.    float alpha = 1.0f;
  356.    float A[] = { -0.723f, 0.041f, 0.333f, -0.682f, 0.193f, 0.581f, 0.963f, -0.757f, 0.396f };
  357.    int lda = 3;
  358.    float B[] = { 0.047f, -0.701f, -0.25f, -0.779f, 0.435f, 0.612f };
  359.    int ldb = 2;
  360.    float B_expected[] = { 0.100624f, 0.67868f, 0.204485f, 0.205225f, 0.17226f, 0.242352f };
  361.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  362.    {
  363.      int i;
  364.      for (i = 0; i < 6; i++) {
  365.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1684)");
  366.      }
  367.    };
  368.   };
  369.  
  370.  
  371.   {
  372.    int order = 102;
  373.    int side = 142;
  374.    int uplo = 122;
  375.    int trans = 111;
  376.    int diag = 132;
  377.    int M = 2;
  378.    int N = 3;
  379.    float alpha = 1.0f;
  380.    float A[] = { -0.13f, 0.511f, -0.544f, 0.938f, -0.126f, -0.873f, 0.118f, -0.75f, 0.674f };
  381.    int lda = 3;
  382.    float B[] = { -0.927f, -0.558f, -0.289f, -0.66f, 0.83f, 0.363f };
  383.    int ldb = 2;
  384.    float B_expected[] = { -1.5262f, -1.09273f, -1.01359f, -0.976899f, 0.83f, 0.363f };
  385.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  386.    {
  387.      int i;
  388.      for (i = 0; i < 6; i++) {
  389.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1685)");
  390.      }
  391.    };
  392.   };
  393.  
  394.  
  395.   {
  396.    int order = 101;
  397.    int side = 141;
  398.    int uplo = 121;
  399.    int trans = 112;
  400.    int diag = 131;
  401.    int M = 2;
  402.    int N = 3;
  403.    float alpha = 0.1f;
  404.    float A[] = { -0.625f, -0.123f, -0.48f, -0.088f };
  405.    int lda = 2;
  406.    float B[] = { 0.376f, -0.46f, -0.813f, 0.419f, 0.792f, 0.226f };
  407.    int ldb = 3;
  408.    float B_expected[] = { -0.0235f, 0.02875f, 0.0508125f, -0.008312f, -0.0013116f, 0.0080111f };
  409.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  410.    {
  411.      int i;
  412.      for (i = 0; i < 6; i++) {
  413.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1686)");
  414.      }
  415.    };
  416.   };
  417.  
  418.  
  419.   {
  420.    int order = 101;
  421.    int side = 141;
  422.    int uplo = 121;
  423.    int trans = 112;
  424.    int diag = 132;
  425.    int M = 2;
  426.    int N = 3;
  427.    float alpha = 0.1f;
  428.    float A[] = { -0.038f, -0.105f, -0.946f, 0.474f };
  429.    int lda = 2;
  430.    float B[] = { -0.757f, 0.974f, -0.045f, -0.809f, 0.654f, 0.611f };
  431.    int ldb = 3;
  432.    float B_expected[] = { -0.0757f, 0.0974f, -0.0045f, -0.0729515f, 0.055173f, 0.0615725f };
  433.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  434.    {
  435.      int i;
  436.      for (i = 0; i < 6; i++) {
  437.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1687)");
  438.      }
  439.    };
  440.   };
  441.  
  442.  
  443.   {
  444.    int order = 101;
  445.    int side = 141;
  446.    int uplo = 122;
  447.    int trans = 112;
  448.    int diag = 131;
  449.    int M = 2;
  450.    int N = 3;
  451.    float alpha = 0.1f;
  452.    float A[] = { -0.328f, 0.713f, 0.781f, 0.084f };
  453.    int lda = 2;
  454.    float B[] = { -0.097f, 0.442f, -0.563f, 0.065f, -0.18f, 0.63f };
  455.    int ldb = 3;
  456.    float B_expected[] = { 0.0082581f, -0.0285556f, 0.0676694f, 5.46e-04f, -0.001512f, 0.005292f };
  457.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  458.    {
  459.      int i;
  460.      for (i = 0; i < 6; i++) {
  461.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1688)");
  462.      }
  463.    };
  464.   };
  465.  
  466.  
  467.   {
  468.    int order = 101;
  469.    int side = 141;
  470.    int uplo = 122;
  471.    int trans = 112;
  472.    int diag = 132;
  473.    int M = 2;
  474.    int N = 3;
  475.    float alpha = 0.1f;
  476.    float A[] = { 0.261f, -0.659f, -0.536f, 0.694f };
  477.    int lda = 2;
  478.    float B[] = { -0.498f, 0.692f, 0.125f, 0.706f, -0.118f, -0.907f };
  479.    int ldb = 3;
  480.    float B_expected[] = { -0.0876416f, 0.0755248f, 0.0611152f, 0.0706f, -0.0118f, -0.0907f };
  481.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  482.    {
  483.      int i;
  484.      for (i = 0; i < 6; i++) {
  485.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1689)");
  486.      }
  487.    };
  488.   };
  489.  
  490.  
  491.   {
  492.    int order = 102;
  493.    int side = 141;
  494.    int uplo = 121;
  495.    int trans = 112;
  496.    int diag = 131;
  497.    int M = 2;
  498.    int N = 3;
  499.    float alpha = 0.1f;
  500.    float A[] = { -0.669f, 0.416f, 0.761f, -0.359f };
  501.    int lda = 2;
  502.    float B[] = { -0.305f, -0.675f, -0.442f, 0.566f, 0.064f, 0.962f };
  503.    int ldb = 2;
  504.    float B_expected[] = { 0.0204045f, 0.001022f, 0.0295698f, -0.0539556f, -0.0042816f, -0.0296654f };
  505.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  506.    {
  507.      int i;
  508.      for (i = 0; i < 6; i++) {
  509.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1690)");
  510.      }
  511.    };
  512.   };
  513.  
  514.  
  515.   {
  516.    int order = 102;
  517.    int side = 141;
  518.    int uplo = 121;
  519.    int trans = 112;
  520.    int diag = 132;
  521.    int M = 2;
  522.    int N = 3;
  523.    float alpha = 0.1f;
  524.    float A[] = { 0.565f, 0.386f, 0.643f, -0.028f };
  525.    int lda = 2;
  526.    float B[] = { 0.863f, -0.241f, 0.766f, 0.656f, -0.977f, 0.274f };
  527.    int ldb = 2;
  528.    float B_expected[] = { 0.0863f, 0.0313909f, 0.0766f, 0.114854f, -0.0977f, -0.0354211f };
  529.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  530.    {
  531.      int i;
  532.      for (i = 0; i < 6; i++) {
  533.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1691)");
  534.      }
  535.    };
  536.   };
  537.  
  538.  
  539.   {
  540.    int order = 102;
  541.    int side = 141;
  542.    int uplo = 122;
  543.    int trans = 112;
  544.    int diag = 131;
  545.    int M = 2;
  546.    int N = 3;
  547.    float alpha = 0.1f;
  548.    float A[] = { 0.116f, 0.534f, 0.043f, 0.73f };
  549.    int lda = 2;
  550.    float B[] = { -0.758f, -0.63f, -0.043f, 0.666f, -0.088f, 0.382f };
  551.    int ldb = 2;
  552.    float B_expected[] = { -0.0424348f, -0.04599f, 0.0350656f, 0.048618f, 0.019378f, 0.027886f };
  553.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  554.    {
  555.      int i;
  556.      for (i = 0; i < 6; i++) {
  557.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1692)");
  558.      }
  559.    };
  560.   };
  561.  
  562.  
  563.   {
  564.    int order = 102;
  565.    int side = 141;
  566.    int uplo = 122;
  567.    int trans = 112;
  568.    int diag = 132;
  569.    int M = 2;
  570.    int N = 3;
  571.    float alpha = 0.1f;
  572.    float A[] = { 0.48f, -0.63f, -0.786f, -0.437f };
  573.    int lda = 2;
  574.    float B[] = { 0.945f, 0.528f, -0.855f, -0.587f, 0.062f, 0.372f };
  575.    int ldb = 2;
  576.    float B_expected[] = { 0.061236f, 0.0528f, -0.048519f, -0.0587f, -0.017236f, 0.0372f };
  577.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  578.    {
  579.      int i;
  580.      for (i = 0; i < 6; i++) {
  581.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1693)");
  582.      }
  583.    };
  584.   };
  585.  
  586.  
  587.   {
  588.    int order = 101;
  589.    int side = 142;
  590.    int uplo = 121;
  591.    int trans = 112;
  592.    int diag = 131;
  593.    int M = 2;
  594.    int N = 3;
  595.    float alpha = 0.1f;
  596.    float A[] = { -0.822f, -0.068f, 0.119f, -0.244f, -0.05f, 0.685f, 0.752f, -0.059f, -0.935f };
  597.    int lda = 3;
  598.    float B[] = { -0.431f, -0.753f, -0.319f, 0.164f, 0.979f, 0.885f };
  599.    int ldb = 3;
  600.    float B_expected[] = { 0.0367525f, -0.0180865f, 0.0298265f, -0.0096065f, 0.0557275f, -0.0827475f };
  601.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  602.    {
  603.      int i;
  604.      for (i = 0; i < 6; i++) {
  605.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1694)");
  606.      }
  607.    };
  608.   };
  609.  
  610.  
  611.   {
  612.    int order = 101;
  613.    int side = 142;
  614.    int uplo = 121;
  615.    int trans = 112;
  616.    int diag = 132;
  617.    int M = 2;
  618.    int N = 3;
  619.    float alpha = 0.1f;
  620.    float A[] = { 0.97f, -0.408f, 0.174f, -0.308f, 0.997f, -0.484f, 0.322f, -0.183f, 0.849f };
  621.    int lda = 3;
  622.    float B[] = { -0.571f, 0.696f, -0.256f, -0.178f, 0.098f, 0.004f };
  623.    int ldb = 3;
  624.    float B_expected[] = { -0.0899512f, 0.0819904f, -0.0256f, -0.0217288f, 0.0096064f, 4.0e-04f };
  625.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  626.    {
  627.      int i;
  628.      for (i = 0; i < 6; i++) {
  629.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1695)");
  630.      }
  631.    };
  632.   };
  633.  
  634.  
  635.   {
  636.    int order = 101;
  637.    int side = 142;
  638.    int uplo = 122;
  639.    int trans = 112;
  640.    int diag = 131;
  641.    int M = 2;
  642.    int N = 3;
  643.    float alpha = 0.1f;
  644.    float A[] = { -0.831f, 0.73f, 0.407f, 0.721f, 0.086f, -0.294f, 0.941f, -0.656f, -0.066f };
  645.    int lda = 3;
  646.    float B[] = { -0.051f, -0.343f, -0.98f, 0.722f, -0.372f, 0.466f };
  647.    int ldb = 3;
  648.    float B_expected[] = { 0.0042381f, -0.0066269f, 0.0241697f, -0.0599982f, 0.048857f, 0.0892678f };
  649.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  650.    {
  651.      int i;
  652.      for (i = 0; i < 6; i++) {
  653.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1696)");
  654.      }
  655.    };
  656.   };
  657.  
  658.  
  659.   {
  660.    int order = 101;
  661.    int side = 142;
  662.    int uplo = 122;
  663.    int trans = 112;
  664.    int diag = 132;
  665.    int M = 2;
  666.    int N = 3;
  667.    float alpha = 0.1f;
  668.    float A[] = { 0.472f, 0.137f, -0.341f, 0.386f, -0.578f, 0.863f, -0.415f, -0.547f, -0.023f };
  669.    int lda = 3;
  670.    float B[] = { 0.582f, 0.141f, -0.306f, -0.047f, -0.162f, -0.784f };
  671.    int ldb = 3;
  672.    float B_expected[] = { 0.0582f, 0.0365652f, -0.0624657f, -0.0047f, -0.0180142f, -0.0675881f };
  673.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  674.    {
  675.      int i;
  676.      for (i = 0; i < 6; i++) {
  677.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1697)");
  678.      }
  679.    };
  680.   };
  681.  
  682.  
  683.   {
  684.    int order = 102;
  685.    int side = 142;
  686.    int uplo = 121;
  687.    int trans = 112;
  688.    int diag = 131;
  689.    int M = 2;
  690.    int N = 3;
  691.    float alpha = 0.1f;
  692.    float A[] = { -0.775f, 0.762f, -0.038f, -0.8f, 0.626f, -0.701f, 0.639f, 0.239f, 0.34f };
  693.    int lda = 3;
  694.    float B[] = { 0.42f, 0.917f, 0.485f, 0.844f, -0.832f, 0.179f };
  695.    int ldb = 2;
  696.    float B_expected[] = { -0.124515f, -0.127149f, 0.0104762f, 0.0571125f, -0.028288f, 0.006086f };
  697.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  698.    {
  699.      int i;
  700.      for (i = 0; i < 6; i++) {
  701.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1698)");
  702.      }
  703.    };
  704.   };
  705.  
  706.  
  707.   {
  708.    int order = 102;
  709.    int side = 142;
  710.    int uplo = 121;
  711.    int trans = 112;
  712.    int diag = 132;
  713.    int M = 2;
  714.    int N = 3;
  715.    float alpha = 0.1f;
  716.    float A[] = { -0.675f, 0.283f, 0.785f, -0.0f, -0.592f, -0.661f, 0.149f, -0.129f, 0.149f };
  717.    int lda = 3;
  718.    float B[] = { 0.964f, -0.575f, -0.215f, 0.953f, 0.527f, -0.418f };
  719.    int ldb = 2;
  720.    float B_expected[] = { 0.104252f, -0.0637282f, -0.0282983f, 0.100692f, 0.0527f, -0.0418f };
  721.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  722.    {
  723.      int i;
  724.      for (i = 0; i < 6; i++) {
  725.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1699)");
  726.      }
  727.    };
  728.   };
  729.  
  730.  
  731.   {
  732.    int order = 102;
  733.    int side = 142;
  734.    int uplo = 122;
  735.    int trans = 112;
  736.    int diag = 131;
  737.    int M = 2;
  738.    int N = 3;
  739.    float alpha = 0.1f;
  740.    float A[] = { -0.225f, -0.943f, 0.839f, 0.759f, 0.752f, 0.807f, 0.288f, -0.276f, 0.434f };
  741.    int lda = 3;
  742.    float B[] = { -0.234f, 0.275f, 0.658f, -0.423f, -0.807f, -0.683f };
  743.    int ldb = 2;
  744.    float B_expected[] = { 0.005265f, -0.0061875f, 0.0715478f, -0.0577421f, -0.0015558f, -0.0407058f };
  745.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  746.    {
  747.      int i;
  748.      for (i = 0; i < 6; i++) {
  749.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1700)");
  750.      }
  751.    };
  752.   };
  753.  
  754.  
  755.   {
  756.    int order = 102;
  757.    int side = 142;
  758.    int uplo = 122;
  759.    int trans = 112;
  760.    int diag = 132;
  761.    int M = 2;
  762.    int N = 3;
  763.    float alpha = 0.1f;
  764.    float A[] = { -0.043f, -0.983f, 0.479f, -0.136f, 0.048f, 0.745f, -0.408f, -0.731f, -0.953f };
  765.    int lda = 3;
  766.    float B[] = { 0.917f, 0.682f, -0.32f, 0.557f, -0.302f, 0.989f };
  767.    int ldb = 2;
  768.    float B_expected[] = { 0.0917f, 0.0682f, -0.122141f, -0.0113406f, -0.0101157f, 0.173064f };
  769.    cblas_strmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  770.    {
  771.      int i;
  772.      for (i = 0; i < 6; i++) {
  773.        gsl_test_rel(B[i], B_expected[i], flteps, "strmm(case 1701)");
  774.      }
  775.    };
  776.   };
  777.  
  778.  
  779.   {
  780.    int order = 101;
  781.    int side = 141;
  782.    int uplo = 121;
  783.    int trans = 111;
  784.    int diag = 131;
  785.    int M = 2;
  786.    int N = 3;
  787.    double alpha = 0;
  788.    double A[] = { -0.561, -0.114, -0.148, 0.488 };
  789.    int lda = 2;
  790.    double B[] = { 0.684, 0.38, 0.419, -0.361, 0.378, -0.423 };
  791.    int ldb = 3;
  792.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  793.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  794.    {
  795.      int i;
  796.      for (i = 0; i < 6; i++) {
  797.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1702)");
  798.      }
  799.    };
  800.   };
  801.  
  802.  
  803.   {
  804.    int order = 101;
  805.    int side = 141;
  806.    int uplo = 121;
  807.    int trans = 111;
  808.    int diag = 132;
  809.    int M = 2;
  810.    int N = 3;
  811.    double alpha = 0;
  812.    double A[] = { -0.378, 0.607, 0.41, 0.418 };
  813.    int lda = 2;
  814.    double B[] = { 0.146, -0.688, -0.953, -0.983, 0.237, 0.128 };
  815.    int ldb = 3;
  816.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  817.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  818.    {
  819.      int i;
  820.      for (i = 0; i < 6; i++) {
  821.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1703)");
  822.      }
  823.    };
  824.   };
  825.  
  826.  
  827.   {
  828.    int order = 101;
  829.    int side = 141;
  830.    int uplo = 122;
  831.    int trans = 111;
  832.    int diag = 131;
  833.    int M = 2;
  834.    int N = 3;
  835.    double alpha = 0;
  836.    double A[] = { -0.31, 0.277, -0.587, 0.885 };
  837.    int lda = 2;
  838.    double B[] = { -0.221, -0.831, -0.319, -0.547, -0.577, 0.295 };
  839.    int ldb = 3;
  840.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  841.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  842.    {
  843.      int i;
  844.      for (i = 0; i < 6; i++) {
  845.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1704)");
  846.      }
  847.    };
  848.   };
  849.  
  850.  
  851.   {
  852.    int order = 101;
  853.    int side = 141;
  854.    int uplo = 122;
  855.    int trans = 111;
  856.    int diag = 132;
  857.    int M = 2;
  858.    int N = 3;
  859.    double alpha = 0;
  860.    double A[] = { -0.577, 0.861, -0.439, -0.916 };
  861.    int lda = 2;
  862.    double B[] = { -0.933, -0.582, 0.528, 0.268, -0.804, 0.62 };
  863.    int ldb = 3;
  864.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  865.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  866.    {
  867.      int i;
  868.      for (i = 0; i < 6; i++) {
  869.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1705)");
  870.      }
  871.    };
  872.   };
  873.  
  874.  
  875.   {
  876.    int order = 102;
  877.    int side = 141;
  878.    int uplo = 121;
  879.    int trans = 111;
  880.    int diag = 131;
  881.    int M = 2;
  882.    int N = 3;
  883.    double alpha = 0;
  884.    double A[] = { -0.824, -0.119, -0.399, -0.653 };
  885.    int lda = 2;
  886.    double B[] = { 0.452, -0.168, 0.256, 0.554, 0.342, 0.318 };
  887.    int ldb = 2;
  888.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  889.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  890.    {
  891.      int i;
  892.      for (i = 0; i < 6; i++) {
  893.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1706)");
  894.      }
  895.    };
  896.   };
  897.  
  898.  
  899.   {
  900.    int order = 102;
  901.    int side = 141;
  902.    int uplo = 121;
  903.    int trans = 111;
  904.    int diag = 132;
  905.    int M = 2;
  906.    int N = 3;
  907.    double alpha = 0;
  908.    double A[] = { -0.299, 0.837, -0.03, 0.552 };
  909.    int lda = 2;
  910.    double B[] = { -0.83, -0.82, -0.362, -0.252, -0.062, -0.942 };
  911.    int ldb = 2;
  912.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  913.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  914.    {
  915.      int i;
  916.      for (i = 0; i < 6; i++) {
  917.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1707)");
  918.      }
  919.    };
  920.   };
  921.  
  922.  
  923.   {
  924.    int order = 102;
  925.    int side = 141;
  926.    int uplo = 122;
  927.    int trans = 111;
  928.    int diag = 131;
  929.    int M = 2;
  930.    int N = 3;
  931.    double alpha = 0;
  932.    double A[] = { -0.545, -0.107, 0.096, 0.183 };
  933.    int lda = 2;
  934.    double B[] = { -0.43, 0.841, 0.035, 0.7, 0.637, 0.095 };
  935.    int ldb = 2;
  936.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  937.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  938.    {
  939.      int i;
  940.      for (i = 0; i < 6; i++) {
  941.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1708)");
  942.      }
  943.    };
  944.   };
  945.  
  946.  
  947.   {
  948.    int order = 102;
  949.    int side = 141;
  950.    int uplo = 122;
  951.    int trans = 111;
  952.    int diag = 132;
  953.    int M = 2;
  954.    int N = 3;
  955.    double alpha = 0;
  956.    double A[] = { 0.626, 0.123, -0.959, 0.971 };
  957.    int lda = 2;
  958.    double B[] = { 0.185, -0.218, -0.074, 0.49, 0.802, -0.454 };
  959.    int ldb = 2;
  960.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  961.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  962.    {
  963.      int i;
  964.      for (i = 0; i < 6; i++) {
  965.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1709)");
  966.      }
  967.    };
  968.   };
  969.  
  970.  
  971.   {
  972.    int order = 101;
  973.    int side = 142;
  974.    int uplo = 121;
  975.    int trans = 111;
  976.    int diag = 131;
  977.    int M = 2;
  978.    int N = 3;
  979.    double alpha = 0;
  980.    double A[] = { -0.131, 0.048, 0.148, 0.834, -0.98, -0.009, -0.727, 0.241, 0.276 };
  981.    int lda = 3;
  982.    double B[] = { 0.75, -0.664, -0.136, -0.793, -0.742, 0.126 };
  983.    int ldb = 3;
  984.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  985.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  986.    {
  987.      int i;
  988.      for (i = 0; i < 6; i++) {
  989.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1710)");
  990.      }
  991.    };
  992.   };
  993.  
  994.  
  995.   {
  996.    int order = 101;
  997.    int side = 142;
  998.    int uplo = 121;
  999.    int trans = 111;
  1000.    int diag = 132;
  1001.    int M = 2;
  1002.    int N = 3;
  1003.    double alpha = 0;
  1004.    double A[] = { 0.431, -0.387, 0.427, 0.495, 0.282, 0.158, -0.335, 0.535, -0.978 };
  1005.    int lda = 3;
  1006.    double B[] = { 0.518, -0.489, 0.899, -0.375, 0.376, -0.831 };
  1007.    int ldb = 3;
  1008.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1009.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1010.    {
  1011.      int i;
  1012.      for (i = 0; i < 6; i++) {
  1013.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1711)");
  1014.      }
  1015.    };
  1016.   };
  1017.  
  1018.  
  1019.   {
  1020.    int order = 101;
  1021.    int side = 142;
  1022.    int uplo = 122;
  1023.    int trans = 111;
  1024.    int diag = 131;
  1025.    int M = 2;
  1026.    int N = 3;
  1027.    double alpha = 0;
  1028.    double A[] = { -0.669, -0.976, -0.2, 0.661, -0.975, -0.965, -0.861, -0.779, -0.73 };
  1029.    int lda = 3;
  1030.    double B[] = { 0.31, 0.023, -0.853, 0.632, -0.174, 0.608 };
  1031.    int ldb = 3;
  1032.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1033.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1034.    {
  1035.      int i;
  1036.      for (i = 0; i < 6; i++) {
  1037.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1712)");
  1038.      }
  1039.    };
  1040.   };
  1041.  
  1042.  
  1043.   {
  1044.    int order = 101;
  1045.    int side = 142;
  1046.    int uplo = 122;
  1047.    int trans = 111;
  1048.    int diag = 132;
  1049.    int M = 2;
  1050.    int N = 3;
  1051.    double alpha = 0;
  1052.    double A[] = { 0.153, -0.408, -0.127, -0.634, -0.384, -0.815, 0.051, -0.096, 0.476 };
  1053.    int lda = 3;
  1054.    double B[] = { 0.343, -0.665, -0.348, 0.748, 0.893, 0.91 };
  1055.    int ldb = 3;
  1056.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1057.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1058.    {
  1059.      int i;
  1060.      for (i = 0; i < 6; i++) {
  1061.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1713)");
  1062.      }
  1063.    };
  1064.   };
  1065.  
  1066.  
  1067.   {
  1068.    int order = 102;
  1069.    int side = 142;
  1070.    int uplo = 121;
  1071.    int trans = 111;
  1072.    int diag = 131;
  1073.    int M = 2;
  1074.    int N = 3;
  1075.    double alpha = 0;
  1076.    double A[] = { -0.918, -0.19, 0.829, 0.942, 0.885, 0.087, 0.321, 0.67, -0.475 };
  1077.    int lda = 3;
  1078.    double B[] = { 0.377, 0.931, 0.291, -0.603, -0.617, 0.402 };
  1079.    int ldb = 2;
  1080.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1081.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1082.    {
  1083.      int i;
  1084.      for (i = 0; i < 6; i++) {
  1085.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1714)");
  1086.      }
  1087.    };
  1088.   };
  1089.  
  1090.  
  1091.   {
  1092.    int order = 102;
  1093.    int side = 142;
  1094.    int uplo = 121;
  1095.    int trans = 111;
  1096.    int diag = 132;
  1097.    int M = 2;
  1098.    int N = 3;
  1099.    double alpha = 0;
  1100.    double A[] = { -0.598, -0.232, -0.64, 0.595, 0.642, -0.921, -0.679, -0.846, -0.921 };
  1101.    int lda = 3;
  1102.    double B[] = { 0.032, -0.036, -0.278, -0.83, 0.922, -0.701 };
  1103.    int ldb = 2;
  1104.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1105.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1106.    {
  1107.      int i;
  1108.      for (i = 0; i < 6; i++) {
  1109.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1715)");
  1110.      }
  1111.    };
  1112.   };
  1113.  
  1114.  
  1115.   {
  1116.    int order = 102;
  1117.    int side = 142;
  1118.    int uplo = 122;
  1119.    int trans = 111;
  1120.    int diag = 131;
  1121.    int M = 2;
  1122.    int N = 3;
  1123.    double alpha = 0;
  1124.    double A[] = { 0.341, -0.858, -0.559, 0.499, -0.114, 0.57, 0.847, -0.612, 0.593 };
  1125.    int lda = 3;
  1126.    double B[] = { 0.672, 0.292, 0.752, 0.842, 0.625, 0.967 };
  1127.    int ldb = 2;
  1128.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1129.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1130.    {
  1131.      int i;
  1132.      for (i = 0; i < 6; i++) {
  1133.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1716)");
  1134.      }
  1135.    };
  1136.   };
  1137.  
  1138.  
  1139.   {
  1140.    int order = 102;
  1141.    int side = 142;
  1142.    int uplo = 122;
  1143.    int trans = 111;
  1144.    int diag = 132;
  1145.    int M = 2;
  1146.    int N = 3;
  1147.    double alpha = 0;
  1148.    double A[] = { 0.958, 0.823, -0.181, 0.141, 0.932, 0.097, -0.636, 0.844, 0.205 };
  1149.    int lda = 3;
  1150.    double B[] = { 0.113, -0.658, 0.703, -0.023, -0.384, 0.439 };
  1151.    int ldb = 2;
  1152.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1153.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1154.    {
  1155.      int i;
  1156.      for (i = 0; i < 6; i++) {
  1157.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1717)");
  1158.      }
  1159.    };
  1160.   };
  1161.  
  1162.  
  1163.   {
  1164.    int order = 101;
  1165.    int side = 141;
  1166.    int uplo = 121;
  1167.    int trans = 112;
  1168.    int diag = 131;
  1169.    int M = 2;
  1170.    int N = 3;
  1171.    double alpha = 0;
  1172.    double A[] = { 0.675, -0.468, -0.564, 0.71 };
  1173.    int lda = 2;
  1174.    double B[] = { -0.401, -0.823, 0.342, -0.384, 0.344, 0.18 };
  1175.    int ldb = 3;
  1176.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1177.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1178.    {
  1179.      int i;
  1180.      for (i = 0; i < 6; i++) {
  1181.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1718)");
  1182.      }
  1183.    };
  1184.   };
  1185.  
  1186.  
  1187.   {
  1188.    int order = 101;
  1189.    int side = 141;
  1190.    int uplo = 121;
  1191.    int trans = 112;
  1192.    int diag = 132;
  1193.    int M = 2;
  1194.    int N = 3;
  1195.    double alpha = 0;
  1196.    double A[] = { 0.932, -0.388, 0.432, -0.167 };
  1197.    int lda = 2;
  1198.    double B[] = { -0.624, 0.023, 0.065, 0.678, 0.044, -0.472 };
  1199.    int ldb = 3;
  1200.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1201.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1202.    {
  1203.      int i;
  1204.      for (i = 0; i < 6; i++) {
  1205.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1719)");
  1206.      }
  1207.    };
  1208.   };
  1209.  
  1210.  
  1211.   {
  1212.    int order = 101;
  1213.    int side = 141;
  1214.    int uplo = 122;
  1215.    int trans = 112;
  1216.    int diag = 131;
  1217.    int M = 2;
  1218.    int N = 3;
  1219.    double alpha = 0;
  1220.    double A[] = { -0.738, 0.649, -0.171, -0.462 };
  1221.    int lda = 2;
  1222.    double B[] = { -0.277, -0.519, -0.501, -0.024, -0.767, -0.591 };
  1223.    int ldb = 3;
  1224.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1225.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1226.    {
  1227.      int i;
  1228.      for (i = 0; i < 6; i++) {
  1229.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1720)");
  1230.      }
  1231.    };
  1232.   };
  1233.  
  1234.  
  1235.   {
  1236.    int order = 101;
  1237.    int side = 141;
  1238.    int uplo = 122;
  1239.    int trans = 112;
  1240.    int diag = 132;
  1241.    int M = 2;
  1242.    int N = 3;
  1243.    double alpha = 0;
  1244.    double A[] = { -0.17, -0.184, -0.243, 0.907 };
  1245.    int lda = 2;
  1246.    double B[] = { 0.593, 0.131, -0.317, -0.254, -0.948, 0.002 };
  1247.    int ldb = 3;
  1248.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1249.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1250.    {
  1251.      int i;
  1252.      for (i = 0; i < 6; i++) {
  1253.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1721)");
  1254.      }
  1255.    };
  1256.   };
  1257.  
  1258.  
  1259.   {
  1260.    int order = 102;
  1261.    int side = 141;
  1262.    int uplo = 121;
  1263.    int trans = 112;
  1264.    int diag = 131;
  1265.    int M = 2;
  1266.    int N = 3;
  1267.    double alpha = 0;
  1268.    double A[] = { 0.06, -0.838, -0.455, -0.715 };
  1269.    int lda = 2;
  1270.    double B[] = { -0.423, 0.665, -0.023, -0.872, -0.313, -0.698 };
  1271.    int ldb = 2;
  1272.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1273.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1274.    {
  1275.      int i;
  1276.      for (i = 0; i < 6; i++) {
  1277.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1722)");
  1278.      }
  1279.    };
  1280.   };
  1281.  
  1282.  
  1283.   {
  1284.    int order = 102;
  1285.    int side = 141;
  1286.    int uplo = 121;
  1287.    int trans = 112;
  1288.    int diag = 132;
  1289.    int M = 2;
  1290.    int N = 3;
  1291.    double alpha = 0;
  1292.    double A[] = { -0.506, 0.792, 0.338, -0.155 };
  1293.    int lda = 2;
  1294.    double B[] = { -0.257, -0.19, 0.201, 0.685, 0.663, 0.302 };
  1295.    int ldb = 2;
  1296.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1297.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1298.    {
  1299.      int i;
  1300.      for (i = 0; i < 6; i++) {
  1301.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1723)");
  1302.      }
  1303.    };
  1304.   };
  1305.  
  1306.  
  1307.   {
  1308.    int order = 102;
  1309.    int side = 141;
  1310.    int uplo = 122;
  1311.    int trans = 112;
  1312.    int diag = 131;
  1313.    int M = 2;
  1314.    int N = 3;
  1315.    double alpha = 0;
  1316.    double A[] = { 0.739, -0.996, 0.182, 0.626 };
  1317.    int lda = 2;
  1318.    double B[] = { 0.009, 0.485, -0.633, -0.08, -0.579, 0.223 };
  1319.    int ldb = 2;
  1320.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1321.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1322.    {
  1323.      int i;
  1324.      for (i = 0; i < 6; i++) {
  1325.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1724)");
  1326.      }
  1327.    };
  1328.   };
  1329.  
  1330.  
  1331.   {
  1332.    int order = 102;
  1333.    int side = 141;
  1334.    int uplo = 122;
  1335.    int trans = 112;
  1336.    int diag = 132;
  1337.    int M = 2;
  1338.    int N = 3;
  1339.    double alpha = 0;
  1340.    double A[] = { 0.777, 0.723, 0.378, 0.98 };
  1341.    int lda = 2;
  1342.    double B[] = { 0.291, -0.267, -0.076, 0.103, -0.021, -0.866 };
  1343.    int ldb = 2;
  1344.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1345.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1346.    {
  1347.      int i;
  1348.      for (i = 0; i < 6; i++) {
  1349.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1725)");
  1350.      }
  1351.    };
  1352.   };
  1353.  
  1354.  
  1355.   {
  1356.    int order = 101;
  1357.    int side = 142;
  1358.    int uplo = 121;
  1359.    int trans = 112;
  1360.    int diag = 131;
  1361.    int M = 2;
  1362.    int N = 3;
  1363.    double alpha = 0;
  1364.    double A[] = { -0.771, 0.469, 0.822, -0.619, 0.953, -0.706, 0.318, 0.559, -0.68 };
  1365.    int lda = 3;
  1366.    double B[] = { -0.32, 0.362, 0.719, -0.661, -0.504, 0.595 };
  1367.    int ldb = 3;
  1368.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1369.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1370.    {
  1371.      int i;
  1372.      for (i = 0; i < 6; i++) {
  1373.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1726)");
  1374.      }
  1375.    };
  1376.   };
  1377.  
  1378.  
  1379.   {
  1380.    int order = 101;
  1381.    int side = 142;
  1382.    int uplo = 121;
  1383.    int trans = 112;
  1384.    int diag = 132;
  1385.    int M = 2;
  1386.    int N = 3;
  1387.    double alpha = 0;
  1388.    double A[] = { 0.073, -0.501, -0.561, -0.229, -0.533, -0.138, 0.924, -0.164, -0.023 };
  1389.    int lda = 3;
  1390.    double B[] = { -0.208, 0.49, 0.827, 0.641, -0.884, -0.624 };
  1391.    int ldb = 3;
  1392.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1393.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1394.    {
  1395.      int i;
  1396.      for (i = 0; i < 6; i++) {
  1397.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1727)");
  1398.      }
  1399.    };
  1400.   };
  1401.  
  1402.  
  1403.   {
  1404.    int order = 101;
  1405.    int side = 142;
  1406.    int uplo = 122;
  1407.    int trans = 112;
  1408.    int diag = 131;
  1409.    int M = 2;
  1410.    int N = 3;
  1411.    double alpha = 0;
  1412.    double A[] = { 0.33, -0.649, -0.43, -0.266, 0.787, 0.449, 0.435, -0.774, -0.447 };
  1413.    int lda = 3;
  1414.    double B[] = { -0.687, -0.459, 0.189, 0.762, -0.039, 0.047 };
  1415.    int ldb = 3;
  1416.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1417.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1418.    {
  1419.      int i;
  1420.      for (i = 0; i < 6; i++) {
  1421.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1728)");
  1422.      }
  1423.    };
  1424.   };
  1425.  
  1426.  
  1427.   {
  1428.    int order = 101;
  1429.    int side = 142;
  1430.    int uplo = 122;
  1431.    int trans = 112;
  1432.    int diag = 132;
  1433.    int M = 2;
  1434.    int N = 3;
  1435.    double alpha = 0;
  1436.    double A[] = { 0.981, 0.242, 0.581, 0.064, 0.792, -0.529, 0.461, 0.224, -0.419 };
  1437.    int lda = 3;
  1438.    double B[] = { 0.285, 0.274, -0.912, 0.601, 0.24, 0.06 };
  1439.    int ldb = 3;
  1440.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1441.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1442.    {
  1443.      int i;
  1444.      for (i = 0; i < 6; i++) {
  1445.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1729)");
  1446.      }
  1447.    };
  1448.   };
  1449.  
  1450.  
  1451.   {
  1452.    int order = 102;
  1453.    int side = 142;
  1454.    int uplo = 121;
  1455.    int trans = 112;
  1456.    int diag = 131;
  1457.    int M = 2;
  1458.    int N = 3;
  1459.    double alpha = 0;
  1460.    double A[] = { -0.582, 0.269, -0.587, 0.68, -0.59, -0.936, 0.236, -0.728, -0.434 };
  1461.    int lda = 3;
  1462.    double B[] = { 0.113, 0.468, 0.943, 0.48, 0.215, -0.525 };
  1463.    int ldb = 2;
  1464.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1465.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1466.    {
  1467.      int i;
  1468.      for (i = 0; i < 6; i++) {
  1469.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1730)");
  1470.      }
  1471.    };
  1472.   };
  1473.  
  1474.  
  1475.   {
  1476.    int order = 102;
  1477.    int side = 142;
  1478.    int uplo = 121;
  1479.    int trans = 112;
  1480.    int diag = 132;
  1481.    int M = 2;
  1482.    int N = 3;
  1483.    double alpha = 0;
  1484.    double A[] = { -0.344, -0.938, 0.556, -0.678, -0.612, -0.519, -0.578, -0.848, 0.699 };
  1485.    int lda = 3;
  1486.    double B[] = { 0.915, -0.118, 0.538, -0.186, -0.413, -0.216 };
  1487.    int ldb = 2;
  1488.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1489.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1490.    {
  1491.      int i;
  1492.      for (i = 0; i < 6; i++) {
  1493.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1731)");
  1494.      }
  1495.    };
  1496.   };
  1497.  
  1498.  
  1499.   {
  1500.    int order = 102;
  1501.    int side = 142;
  1502.    int uplo = 122;
  1503.    int trans = 112;
  1504.    int diag = 131;
  1505.    int M = 2;
  1506.    int N = 3;
  1507.    double alpha = 0;
  1508.    double A[] = { -0.843, 0.54, -0.892, -0.296, 0.786, 0.136, 0.731, -0.418, -0.118 };
  1509.    int lda = 3;
  1510.    double B[] = { -0.775, 0.5, -0.399, -0.709, 0.779, 0.774 };
  1511.    int ldb = 2;
  1512.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1513.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1514.    {
  1515.      int i;
  1516.      for (i = 0; i < 6; i++) {
  1517.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1732)");
  1518.      }
  1519.    };
  1520.   };
  1521.  
  1522.  
  1523.   {
  1524.    int order = 102;
  1525.    int side = 142;
  1526.    int uplo = 122;
  1527.    int trans = 112;
  1528.    int diag = 132;
  1529.    int M = 2;
  1530.    int N = 3;
  1531.    double alpha = 0;
  1532.    double A[] = { -0.765, 0.233, 0.318, 0.547, -0.469, 0.023, -0.867, 0.687, -0.912 };
  1533.    int lda = 3;
  1534.    double B[] = { 0.019, -0.145, 0.472, 0.333, 0.527, -0.224 };
  1535.    int ldb = 2;
  1536.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  1537.    cblas_dtrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1538.    {
  1539.      int i;
  1540.      for (i = 0; i < 6; i++) {
  1541.        gsl_test_rel(B[i], B_expected[i], dbleps, "dtrmm(case 1733)");
  1542.      }
  1543.    };
  1544.   };
  1545.  
  1546.  
  1547.   {
  1548.    int order = 101;
  1549.    int side = 141;
  1550.    int uplo = 121;
  1551.    int trans = 111;
  1552.    int diag = 131;
  1553.    int M = 2;
  1554.    int N = 3;
  1555.    float alpha[2] = {0.0f, 0.1f};
  1556.    float A[] = { -0.852f, -0.409f, 0.871f, -0.854f, -0.493f, 0.444f, 0.973f, 0.027f };
  1557.    int lda = 2;
  1558.    float B[] = { -0.561f, 0.132f, 0.689f, 0.653f, -0.758f, -0.109f, -0.596f, 0.395f, -0.561f, 0.378f, 0.21f, 0.51f };
  1559.    int ldb = 3;
  1560.    float B_expected[] = { -0.0970014f, 0.0350174f, 0.0029825f, -0.048577f, -0.066776f, 0.121969f, -0.0368243f, -0.0590573f, -0.0352647f, -0.0556059f, -0.05019f, 0.019056f };
  1561.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1562.    {
  1563.      int i;
  1564.      for (i = 0; i < 6; i++) {
  1565.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1734) real");
  1566.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1734) imag");
  1567.      };
  1568.    };
  1569.   };
  1570.  
  1571.  
  1572.   {
  1573.    int order = 101;
  1574.    int side = 141;
  1575.    int uplo = 121;
  1576.    int trans = 111;
  1577.    int diag = 132;
  1578.    int M = 2;
  1579.    int N = 3;
  1580.    float alpha[2] = {0.0f, 0.1f};
  1581.    float A[] = { 0.349f, 0.0f, -0.462f, 0.91f, -0.693f, 0.587f, -0.617f, 0.112f };
  1582.    int lda = 2;
  1583.    float B[] = { 0.842f, -0.473f, 0.825f, 0.866f, 0.986f, 0.686f, 0.346f, 0.299f, -0.659f, 0.009f, 0.007f, -0.478f };
  1584.    int ldb = 3;
  1585.    float B_expected[] = { 0.0296278f, 0.0410058f, -0.0262152f, 0.112127f, -0.0913206f, 0.141775f, -0.0299f, 0.0346f, -0.0009f, -0.0659f, 0.0478f, 0.0007f };
  1586.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1587.    {
  1588.      int i;
  1589.      for (i = 0; i < 6; i++) {
  1590.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1735) real");
  1591.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1735) imag");
  1592.      };
  1593.    };
  1594.   };
  1595.  
  1596.  
  1597.   {
  1598.    int order = 101;
  1599.    int side = 141;
  1600.    int uplo = 122;
  1601.    int trans = 111;
  1602.    int diag = 131;
  1603.    int M = 2;
  1604.    int N = 3;
  1605.    float alpha[2] = {0.0f, 0.1f};
  1606.    float A[] = { 0.661f, -0.823f, 0.28f, 0.171f, 0.267f, 0.66f, 0.844f, 0.472f };
  1607.    int lda = 2;
  1608.    float B[] = { -0.256f, -0.518f, -0.933f, 0.066f, -0.513f, -0.286f, 0.109f, 0.372f, -0.183f, 0.482f, 0.362f, -0.436f };
  1609.    int ldb = 3;
  1610.    float B_expected[] = { 0.013171f, -0.059553f, -0.0811485f, -0.0562395f, -0.0233153f, -0.0574471f, -0.005815f, 0.018994f, 0.0277726f, -0.0674627f, 0.0612062f, 0.0563109f };
  1611.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1612.    {
  1613.      int i;
  1614.      for (i = 0; i < 6; i++) {
  1615.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1736) real");
  1616.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1736) imag");
  1617.      };
  1618.    };
  1619.   };
  1620.  
  1621.  
  1622.   {
  1623.    int order = 101;
  1624.    int side = 141;
  1625.    int uplo = 122;
  1626.    int trans = 111;
  1627.    int diag = 132;
  1628.    int M = 2;
  1629.    int N = 3;
  1630.    float alpha[2] = {0.0f, 0.1f};
  1631.    float A[] = { 0.623f, 0.314f, -0.594f, 0.717f, 0.566f, 0.001f, -0.411f, -0.387f };
  1632.    int lda = 2;
  1633.    float B[] = { -0.083f, 0.937f, -0.814f, 0.9f, -0.042f, 0.678f, -0.928f, 0.228f, 0.965f, -0.16f, 0.006f, -0.281f };
  1634.    int ldb = 3;
  1635.    float B_expected[] = { -0.0937f, -0.0083f, -0.09f, -0.0814f, -0.0678f, -0.0042f, -0.0758259f, -0.0975915f, -0.0348586f, 0.0503376f, -0.0102706f, -0.001845f };
  1636.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1637.    {
  1638.      int i;
  1639.      for (i = 0; i < 6; i++) {
  1640.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1737) real");
  1641.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1737) imag");
  1642.      };
  1643.    };
  1644.   };
  1645.  
  1646.  
  1647.   {
  1648.    int order = 102;
  1649.    int side = 141;
  1650.    int uplo = 121;
  1651.    int trans = 111;
  1652.    int diag = 131;
  1653.    int M = 2;
  1654.    int N = 3;
  1655.    float alpha[2] = {0.0f, 0.1f};
  1656.    float A[] = { -0.247f, -0.582f, 0.651f, -0.534f, -0.491f, 0.346f, 0.936f, -0.227f };
  1657.    int lda = 2;
  1658.    float B[] = { -0.002f, -0.02f, 0.162f, -0.62f, 0.632f, -0.07f, 0.352f, 0.042f, 0.574f, 0.272f, -0.139f, 0.012f };
  1659.    int ldb = 2;
  1660.    float B_expected[] = { -0.0366576f, 0.0123832f, 0.0617094f, 0.0010892f, 0.0249364f, -0.0384208f, 0.0040592f, 0.0339006f, 0.0455238f, 0.0080623f, -0.0042785f, -0.012738f };
  1661.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1662.    {
  1663.      int i;
  1664.      for (i = 0; i < 6; i++) {
  1665.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1738) real");
  1666.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1738) imag");
  1667.      };
  1668.    };
  1669.   };
  1670.  
  1671.  
  1672.   {
  1673.    int order = 102;
  1674.    int side = 141;
  1675.    int uplo = 121;
  1676.    int trans = 111;
  1677.    int diag = 132;
  1678.    int M = 2;
  1679.    int N = 3;
  1680.    float alpha[2] = {0.0f, 0.1f};
  1681.    float A[] = { -0.152f, 0.395f, -0.077f, -0.191f, -0.757f, 0.858f, -0.494f, -0.734f };
  1682.    int lda = 2;
  1683.    float B[] = { -0.166f, -0.413f, -0.373f, 0.915f, -0.824f, -0.066f, -0.114f, -0.921f, 0.862f, 0.312f, 0.221f, 0.699f };
  1684.    int ldb = 2;
  1685.    float B_expected[] = { 0.142569f, -0.0668709f, -0.0915f, -0.0373f, -0.0533385f, 0.0052516f, 0.0921f, -0.0114f, 0.0027525f, 0.0094961f, -0.0699f, 0.0221f };
  1686.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1687.    {
  1688.      int i;
  1689.      for (i = 0; i < 6; i++) {
  1690.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1739) real");
  1691.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1739) imag");
  1692.      };
  1693.    };
  1694.   };
  1695.  
  1696.  
  1697.   {
  1698.    int order = 102;
  1699.    int side = 141;
  1700.    int uplo = 122;
  1701.    int trans = 111;
  1702.    int diag = 131;
  1703.    int M = 2;
  1704.    int N = 3;
  1705.    float alpha[2] = {0.0f, 0.1f};
  1706.    float A[] = { -0.426f, 0.817f, -0.993f, -0.882f, 0.615f, 0.627f, -0.238f, -0.903f };
  1707.    int lda = 2;
  1708.    float B[] = { 0.895f, 0.849f, 0.811f, 0.402f, 0.074f, -0.493f, -0.548f, -0.82f, 0.323f, 0.301f, 0.612f, -0.092f };
  1709.    int ldb = 2;
  1710.    float B_expected[] = { -0.0369541f, -0.10749f, 0.246046f, 0.0030071f, -0.0270476f, 0.0371257f, -0.111428f, -0.111834f, -0.0135665f, -0.0383515f, 0.111452f, -0.0283989f };
  1711.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1712.    {
  1713.      int i;
  1714.      for (i = 0; i < 6; i++) {
  1715.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1740) real");
  1716.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1740) imag");
  1717.      };
  1718.    };
  1719.   };
  1720.  
  1721.  
  1722.   {
  1723.    int order = 102;
  1724.    int side = 141;
  1725.    int uplo = 122;
  1726.    int trans = 111;
  1727.    int diag = 132;
  1728.    int M = 2;
  1729.    int N = 3;
  1730.    float alpha[2] = {0.0f, 0.1f};
  1731.    float A[] = { -0.451f, -0.754f, -0.673f, 0.433f, -0.712f, -0.033f, -0.588f, 0.116f };
  1732.    int lda = 2;
  1733.    float B[] = { 0.787f, -0.377f, -0.854f, -0.464f, 0.118f, 0.231f, 0.362f, -0.457f, -0.076f, 0.373f, -0.286f, -0.468f };
  1734.    int ldb = 2;
  1735.    float B_expected[] = { 0.0377f, 0.0787f, -0.0130492f, -0.122041f, -0.0231f, 0.0118f, 0.0561369f, 0.0182563f, -0.0373f, -0.0076f, 0.0751937f, -0.0396361f };
  1736.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1737.    {
  1738.      int i;
  1739.      for (i = 0; i < 6; i++) {
  1740.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1741) real");
  1741.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1741) imag");
  1742.      };
  1743.    };
  1744.   };
  1745.  
  1746.  
  1747.   {
  1748.    int order = 101;
  1749.    int side = 142;
  1750.    int uplo = 121;
  1751.    int trans = 111;
  1752.    int diag = 131;
  1753.    int M = 2;
  1754.    int N = 3;
  1755.    float alpha[2] = {0.0f, 0.1f};
  1756.    float A[] = { -0.454f, 0.494f, 0.424f, -0.907f, 0.339f, -0.141f, 0.169f, 0.364f, -0.607f, 0.955f, -0.156f, 0.962f, -0.254f, 0.079f, 0.209f, 0.946f, 0.93f, 0.677f };
  1757.    int lda = 3;
  1758.    float B[] = { -0.99f, -0.484f, 0.915f, -0.383f, 0.228f, 0.797f, 0.597f, 0.765f, -0.629f, 0.002f, -0.89f, 0.077f };
  1759.    int ldb = 3;
  1760.    float B_expected[] = { 0.0269324f, 0.0688556f, -0.179902f, -0.104839f, -0.181106f, -0.0505677f, 0.0052392f, -0.0648948f, 0.0819028f, 0.132688f, 0.0961172f, -0.0473381f };
  1761.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1762.    {
  1763.      int i;
  1764.      for (i = 0; i < 6; i++) {
  1765.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1742) real");
  1766.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1742) imag");
  1767.      };
  1768.    };
  1769.   };
  1770.  
  1771.  
  1772.   {
  1773.    int order = 101;
  1774.    int side = 142;
  1775.    int uplo = 121;
  1776.    int trans = 111;
  1777.    int diag = 132;
  1778.    int M = 2;
  1779.    int N = 3;
  1780.    float alpha[2] = {0.0f, 0.1f};
  1781.    float A[] = { -0.008f, -0.654f, 0.174f, 0.448f, 0.388f, -0.108f, -0.479f, -0.708f, -0.035f, 0.816f, 0.487f, 0.22f, -0.482f, 0.57f, -0.317f, 0.203f, -0.547f, -0.415f };
  1782.    int lda = 3;
  1783.    float B[] = { 0.651f, 0.187f, 0.591f, -0.007f, 0.171f, -0.923f, -0.029f, -0.685f, -0.049f, 0.135f, 0.578f, 0.979f };
  1784.    int ldb = 3;
  1785.    float B_expected[] = { -0.0187f, 0.0651f, -0.0317186f, 0.0620498f, 0.0794141f, 0.0733141f, 0.0685f, -0.0029f, -0.0002818f, 0.0252834f, -0.0771317f, 0.0439205f };
  1786.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1787.    {
  1788.      int i;
  1789.      for (i = 0; i < 6; i++) {
  1790.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1743) real");
  1791.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1743) imag");
  1792.      };
  1793.    };
  1794.   };
  1795.  
  1796.  
  1797.   {
  1798.    int order = 101;
  1799.    int side = 142;
  1800.    int uplo = 122;
  1801.    int trans = 111;
  1802.    int diag = 131;
  1803.    int M = 2;
  1804.    int N = 3;
  1805.    float alpha[2] = {0.0f, 0.1f};
  1806.    float A[] = { 0.952f, 0.29f, 0.944f, 0.294f, -0.762f, -0.7f, -0.949f, 0.167f, 0.307f, 0.904f, -0.428f, -0.411f, 0.496f, 0.004f, -0.611f, -0.09f, -0.846f, 0.081f };
  1807.    int lda = 3;
  1808.    float B[] = { 0.782f, -0.035f, -0.441f, -0.791f, -0.09f, -0.56f, -0.438f, -0.691f, 0.88f, 0.545f, -0.55f, 0.595f };
  1809.    int ldb = 3;
  1810.    float B_expected[] = { -0.0592352f, 0.126282f, 0.0291241f, 0.0584267f, -0.046647f, 0.01215f, 0.0862177f, -0.14179f, -0.064879f, 0.016708f, 0.054792f, 0.0417105f };
  1811.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1812.    {
  1813.      int i;
  1814.      for (i = 0; i < 6; i++) {
  1815.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1744) real");
  1816.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1744) imag");
  1817.      };
  1818.    };
  1819.   };
  1820.  
  1821.  
  1822.   {
  1823.    int order = 101;
  1824.    int side = 142;
  1825.    int uplo = 122;
  1826.    int trans = 111;
  1827.    int diag = 132;
  1828.    int M = 2;
  1829.    int N = 3;
  1830.    float alpha[2] = {0.0f, 0.1f};
  1831.    float A[] = { -0.519f, 0.708f, -0.934f, -0.219f, 0.376f, -0.967f, 0.322f, -0.355f, 0.972f, -0.156f, -0.735f, 0.928f, 0.084f, -0.267f, -0.152f, 0.434f, 0.267f, 0.983f };
  1832.    int lda = 3;
  1833.    float B[] = { -0.54f, 0.149f, 0.574f, 0.742f, 0.704f, 0.459f, -0.9f, 0.04f, 0.538f, -0.858f, 0.467f, 0.686f };
  1834.    int ldb = 3;
  1835.    float B_expected[] = { -0.0034742f, 0.0089927f, -0.0977768f, 0.0267786f, -0.0459f, 0.0704f, 0.0494331f, -0.0808964f, 0.0759594f, 0.0169292f, -0.0686f, 0.0467f };
  1836.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1837.    {
  1838.      int i;
  1839.      for (i = 0; i < 6; i++) {
  1840.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1745) real");
  1841.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1745) imag");
  1842.      };
  1843.    };
  1844.   };
  1845.  
  1846.  
  1847.   {
  1848.    int order = 102;
  1849.    int side = 142;
  1850.    int uplo = 121;
  1851.    int trans = 111;
  1852.    int diag = 131;
  1853.    int M = 2;
  1854.    int N = 3;
  1855.    float alpha[2] = {0.0f, 0.1f};
  1856.    float A[] = { -0.541f, 0.67f, 0.014f, 0.446f, 0.086f, -0.525f, 0.033f, -0.932f, 0.977f, 0.321f, -0.651f, 0.027f, 0.409f, 0.328f, 0.359f, -0.615f, 0.419f, -0.25f };
  1857.    int lda = 3;
  1858.    float B[] = { -0.156f, 0.666f, -0.231f, 0.691f, 0.935f, -0.481f, -0.142f, -0.117f, 0.529f, 0.526f, 0.266f, 0.417f };
  1859.    int ldb = 2;
  1860.    float B_expected[] = { 0.0464826f, -0.0361824f, 0.0528601f, -0.0337999f, 0.0002432f, 0.168346f, -0.0078204f, 0.0535212f, 0.0438334f, 0.0110749f, -0.0360401f, -0.0228356f };
  1861.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1862.    {
  1863.      int i;
  1864.      for (i = 0; i < 6; i++) {
  1865.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1746) real");
  1866.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1746) imag");
  1867.      };
  1868.    };
  1869.   };
  1870.  
  1871.  
  1872.   {
  1873.    int order = 102;
  1874.    int side = 142;
  1875.    int uplo = 121;
  1876.    int trans = 111;
  1877.    int diag = 132;
  1878.    int M = 2;
  1879.    int N = 3;
  1880.    float alpha[2] = {0.0f, 0.1f};
  1881.    float A[] = { -0.459f, -0.349f, -0.335f, 0.008f, 0.866f, 0.978f, -0.869f, -0.361f, -0.711f, 0.712f, 0.207f, 0.305f, 0.766f, -0.262f, 0.012f, -0.333f, 0.617f, 0.91f };
  1882.    int lda = 3;
  1883.    float B[] = { -0.138f, -0.256f, -0.319f, -0.771f, 0.674f, -0.565f, -0.779f, -0.516f, -0.017f, -0.097f, -0.555f, 0.308f };
  1884.    int ldb = 2;
  1885.    float B_expected[] = { 0.0256f, -0.0138f, 0.0771f, -0.0319f, 0.0292718f, 0.0701506f, -0.0269158f, -0.078012f, 0.0488162f, -0.0369837f, -0.0054207f, -0.118253f };
  1886.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1887.    {
  1888.      int i;
  1889.      for (i = 0; i < 6; i++) {
  1890.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1747) real");
  1891.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1747) imag");
  1892.      };
  1893.    };
  1894.   };
  1895.  
  1896.  
  1897.   {
  1898.    int order = 102;
  1899.    int side = 142;
  1900.    int uplo = 122;
  1901.    int trans = 111;
  1902.    int diag = 131;
  1903.    int M = 2;
  1904.    int N = 3;
  1905.    float alpha[2] = {0.0f, 0.1f};
  1906.    float A[] = { -0.825f, -0.785f, -0.605f, -0.508f, 0.763f, -0.578f, -0.167f, -0.233f, 0.011f, -0.853f, 0.24f, 0.192f, 0.293f, -0.72f, -0.348f, 0.023f, -0.145f, -0.493f };
  1907.    int lda = 3;
  1908.    float B[] = { 0.305f, -0.255f, 0.882f, 0.883f, 0.088f, -0.473f, 0.135f, -0.063f, -0.671f, 0.473f, 0.874f, 0.548f };
  1909.    int ldb = 2;
  1910.    float B_expected[] = { -0.0961148f, -0.0983903f, 0.153836f, 0.0835432f, 0.0095579f, -0.0654357f, -0.018348f, 0.005229f, -0.0262218f, 0.0330484f, 0.0510342f, 0.0143434f };
  1911.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1912.    {
  1913.      int i;
  1914.      for (i = 0; i < 6; i++) {
  1915.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1748) real");
  1916.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1748) imag");
  1917.      };
  1918.    };
  1919.   };
  1920.  
  1921.  
  1922.   {
  1923.    int order = 102;
  1924.    int side = 142;
  1925.    int uplo = 122;
  1926.    int trans = 111;
  1927.    int diag = 132;
  1928.    int M = 2;
  1929.    int N = 3;
  1930.    float alpha[2] = {0.0f, 0.1f};
  1931.    float A[] = { 0.63f, 0.353f, 0.445f, 0.845f, 0.273f, -0.135f, 0.03f, 0.936f, 0.141f, 0.638f, -0.399f, 0.343f, -0.037f, -0.335f, -0.089f, 0.081f, 0.987f, -0.256f };
  1932.    int lda = 3;
  1933.    float B[] = { -0.567f, 0.803f, 0.168f, 0.744f, -0.328f, 0.835f, -0.852f, 0.702f, 0.21f, -0.618f, 0.666f, -0.303f };
  1934.    int ldb = 2;
  1935.    float B_expected[] = { -0.0700351f, -0.144464f, -0.0163821f, -0.0663417f, -0.115361f, -0.0199816f, -0.105134f, -0.10138f, 0.0618f, 0.021f, 0.0303f, 0.0666f };
  1936.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1937.    {
  1938.      int i;
  1939.      for (i = 0; i < 6; i++) {
  1940.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1749) real");
  1941.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1749) imag");
  1942.      };
  1943.    };
  1944.   };
  1945.  
  1946.  
  1947.   {
  1948.    int order = 101;
  1949.    int side = 141;
  1950.    int uplo = 121;
  1951.    int trans = 112;
  1952.    int diag = 131;
  1953.    int M = 2;
  1954.    int N = 3;
  1955.    float alpha[2] = {0.0f, 0.1f};
  1956.    float A[] = { -0.741f, 0.904f, -0.599f, 0.753f, -0.297f, 0.38f, -0.056f, -0.715f };
  1957.    int lda = 2;
  1958.    float B[] = { 0.646f, -0.447f, -0.147f, 0.314f, -0.713f, 0.187f, -0.589f, 0.287f, -0.809f, -0.293f, 0.418f, 0.778f };
  1959.    int ldb = 3;
  1960.    float B_expected[] = { -0.0915211f, -0.0074598f, 0.0365562f, -0.0174929f, 0.0783119f, 0.0359285f, -0.115925f, 0.0187826f, -0.0296066f, -0.031258f, 0.099134f, 0.0819138f };
  1961.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1962.    {
  1963.      int i;
  1964.      for (i = 0; i < 6; i++) {
  1965.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1750) real");
  1966.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1750) imag");
  1967.      };
  1968.    };
  1969.   };
  1970.  
  1971.  
  1972.   {
  1973.    int order = 101;
  1974.    int side = 141;
  1975.    int uplo = 121;
  1976.    int trans = 112;
  1977.    int diag = 132;
  1978.    int M = 2;
  1979.    int N = 3;
  1980.    float alpha[2] = {0.0f, 0.1f};
  1981.    float A[] = { -0.645f, 0.756f, 0.709f, -0.657f, -0.023f, -0.714f, 0.03f, 0.239f };
  1982.    int lda = 2;
  1983.    float B[] = { -0.16f, 0.254f, -0.68f, 0.183f, -0.402f, -0.259f, 0.104f, -0.09f, 0.944f, 0.729f, -0.378f, -0.792f };
  1984.    int ldb = 3;
  1985.    float B_expected[] = { -0.0254f, -0.016f, -0.0183f, -0.068f, 0.0259f, -0.0402f, -0.0195206f, 0.0157438f, -0.130551f, 0.0582111f, 0.0711517f, -0.0833181f };
  1986.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  1987.    {
  1988.      int i;
  1989.      for (i = 0; i < 6; i++) {
  1990.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1751) real");
  1991.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1751) imag");
  1992.      };
  1993.    };
  1994.   };
  1995.  
  1996.  
  1997.   {
  1998.    int order = 101;
  1999.    int side = 141;
  2000.    int uplo = 122;
  2001.    int trans = 112;
  2002.    int diag = 131;
  2003.    int M = 2;
  2004.    int N = 3;
  2005.    float alpha[2] = {0.0f, 0.1f};
  2006.    float A[] = { 0.25f, -0.038f, 0.377f, -0.209f, 0.166f, -0.073f, -0.24f, 0.938f };
  2007.    int lda = 2;
  2008.    float B[] = { 0.26f, 0.696f, -0.183f, 0.668f, -0.08f, -0.938f, -0.837f, -0.509f, 0.781f, -0.063f, -0.953f, 0.227f };
  2009.    int ldb = 3;
  2010.    float B_expected[] = { -0.0140727f, -0.0084651f, -0.0106483f, 0.0104681f, 0.0124209f, -0.0197271f, 0.0662946f, 0.0678322f, -0.0747698f, -0.0128346f, 0.0948394f, 0.0015794f };
  2011.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2012.    {
  2013.      int i;
  2014.      for (i = 0; i < 6; i++) {
  2015.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1752) real");
  2016.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1752) imag");
  2017.      };
  2018.    };
  2019.   };
  2020.  
  2021.  
  2022.   {
  2023.    int order = 101;
  2024.    int side = 141;
  2025.    int uplo = 122;
  2026.    int trans = 112;
  2027.    int diag = 132;
  2028.    int M = 2;
  2029.    int N = 3;
  2030.    float alpha[2] = {0.0f, 0.1f};
  2031.    float A[] = { -0.668f, 0.804f, 0.608f, -0.682f, -0.513f, 0.521f, 0.878f, -0.664f };
  2032.    int lda = 2;
  2033.    float B[] = { -0.871f, 0.699f, 0.561f, 0.823f, -0.787f, 0.055f, -0.686f, 0.361f, -0.662f, -0.192f, -0.301f, -0.167f };
  2034.    int ldb = 3;
  2035.    float B_expected[] = { -0.0156401f, -0.0707163f, -0.0576594f, 0.100064f, 0.001615f, -0.054558f, -0.0361f, -0.0686f, 0.0192f, -0.0662f, 0.0167f, -0.0301f };
  2036.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2037.    {
  2038.      int i;
  2039.      for (i = 0; i < 6; i++) {
  2040.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1753) real");
  2041.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1753) imag");
  2042.      };
  2043.    };
  2044.   };
  2045.  
  2046.  
  2047.   {
  2048.    int order = 102;
  2049.    int side = 141;
  2050.    int uplo = 121;
  2051.    int trans = 112;
  2052.    int diag = 131;
  2053.    int M = 2;
  2054.    int N = 3;
  2055.    float alpha[2] = {0.0f, 0.1f};
  2056.    float A[] = { 0.091f, 0.189f, -0.221f, 0.749f, 0.354f, -0.397f, 0.105f, -0.944f };
  2057.    int lda = 2;
  2058.    float B[] = { 0.731f, -0.446f, 0.983f, 0.793f, 0.533f, 0.386f, -0.781f, -0.063f, 0.875f, -0.128f, -0.179f, -0.079f };
  2059.    int ldb = 2;
  2060.    float B_expected[] = { -0.0097573f, 0.0150815f, 0.129278f, 0.0933519f, -0.0135863f, -0.0024451f, -0.0655692f, 0.0200447f, -0.0153727f, 0.0103817f, 0.0232006f, 0.0165563f };
  2061.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2062.    {
  2063.      int i;
  2064.      for (i = 0; i < 6; i++) {
  2065.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1754) real");
  2066.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1754) imag");
  2067.      };
  2068.    };
  2069.   };
  2070.  
  2071.  
  2072.   {
  2073.    int order = 102;
  2074.    int side = 141;
  2075.    int uplo = 121;
  2076.    int trans = 112;
  2077.    int diag = 132;
  2078.    int M = 2;
  2079.    int N = 3;
  2080.    float alpha[2] = {0.0f, 0.1f};
  2081.    float A[] = { 0.676f, 0.644f, 0.03f, 0.456f, 0.002f, -0.909f, 0.984f, 0.771f };
  2082.    int lda = 2;
  2083.    float B[] = { 0.65f, 0.005f, -0.883f, -0.154f, -0.137f, -0.137f, 0.531f, -0.49f, 0.052f, 0.273f, -0.602f, 0.655f };
  2084.    int ldb = 2;
  2085.    float B_expected[] = { -0.0005f, 0.065f, 0.074484f, -0.0877155f, 0.0137f, -0.0137f, 0.0365741f, 0.0406193f, -0.0273f, 0.0052f, -0.0608278f, -0.0353739f };
  2086.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2087.    {
  2088.      int i;
  2089.      for (i = 0; i < 6; i++) {
  2090.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1755) real");
  2091.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1755) imag");
  2092.      };
  2093.    };
  2094.   };
  2095.  
  2096.  
  2097.   {
  2098.    int order = 102;
  2099.    int side = 141;
  2100.    int uplo = 122;
  2101.    int trans = 112;
  2102.    int diag = 131;
  2103.    int M = 2;
  2104.    int N = 3;
  2105.    float alpha[2] = {0.0f, 0.1f};
  2106.    float A[] = { 0.832f, -0.559f, 0.188f, -0.488f, -0.051f, -0.057f, 0.909f, 0.006f };
  2107.    int lda = 2;
  2108.    float B[] = { -0.408f, 0.303f, 0.03f, 0.529f, -0.584f, -0.976f, 0.443f, -0.762f, 0.43f, 0.812f, -0.075f, 0.06f };
  2109.    int ldb = 2;
  2110.    float B_expected[] = { -0.056498f, 0.0093713f, -0.0481041f, 0.0024096f, 0.0845016f, -0.132004f, 0.069f, 0.0407259f, -0.0483094f, 0.0826848f, -0.005409f, -0.0068535f };
  2111.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2112.    {
  2113.      int i;
  2114.      for (i = 0; i < 6; i++) {
  2115.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1756) real");
  2116.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1756) imag");
  2117.      };
  2118.    };
  2119.   };
  2120.  
  2121.  
  2122.   {
  2123.    int order = 102;
  2124.    int side = 141;
  2125.    int uplo = 122;
  2126.    int trans = 112;
  2127.    int diag = 132;
  2128.    int M = 2;
  2129.    int N = 3;
  2130.    float alpha[2] = {0.0f, 0.1f};
  2131.    float A[] = { -0.15f, -0.297f, 0.821f, -0.576f, -0.572f, 0.924f, 0.106f, -0.131f };
  2132.    int lda = 2;
  2133.    float B[] = { -0.271f, 0.793f, -0.232f, -0.967f, -0.466f, 0.37f, -0.745f, -0.156f, -0.091f, -0.877f, 0.595f, 0.448f };
  2134.    int ldb = 2;
  2135.    float B_expected[] = { -0.0132725f, -0.101846f, 0.0967f, -0.0232f, -0.0671044f, -0.11675f, 0.0156f, -0.0745f, 0.0851912f, 0.0655543f, -0.0448f, 0.0595f };
  2136.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2137.    {
  2138.      int i;
  2139.      for (i = 0; i < 6; i++) {
  2140.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1757) real");
  2141.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1757) imag");
  2142.      };
  2143.    };
  2144.   };
  2145.  
  2146.  
  2147.   {
  2148.    int order = 101;
  2149.    int side = 142;
  2150.    int uplo = 121;
  2151.    int trans = 112;
  2152.    int diag = 131;
  2153.    int M = 2;
  2154.    int N = 3;
  2155.    float alpha[2] = {0.0f, 0.1f};
  2156.    float A[] = { 0.002f, 0.0f, 0.626f, -0.148f, 0.874f, 0.229f, -0.227f, -0.55f, -0.895f, 0.586f, 0.934f, 0.618f, 0.958f, -0.543f, 0.49f, 0.671f, -0.871f, 0.227f };
  2157.    int lda = 3;
  2158.    float B[] = { -0.415f, 0.156f, -0.539f, -0.247f, -0.725f, 0.932f, 0.565f, 0.454f, -0.118f, 0.693f, -0.968f, -0.601f };
  2159.    int ldb = 3;
  2160.    float B_expected[] = { -0.0574005f, -0.122188f, -0.0327649f, -0.0625979f, 0.0976347f, 0.0419911f, 0.0294756f, -0.0678577f, 0.184894f, -0.0833182f, -0.0303735f, 0.0979555f };
  2161.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2162.    {
  2163.      int i;
  2164.      for (i = 0; i < 6; i++) {
  2165.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1758) real");
  2166.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1758) imag");
  2167.      };
  2168.    };
  2169.   };
  2170.  
  2171.  
  2172.   {
  2173.    int order = 101;
  2174.    int side = 142;
  2175.    int uplo = 121;
  2176.    int trans = 112;
  2177.    int diag = 132;
  2178.    int M = 2;
  2179.    int N = 3;
  2180.    float alpha[2] = {0.0f, 0.1f};
  2181.    float A[] = { 0.89f, 0.309f, -0.786f, 0.999f, 0.511f, 0.599f, 0.385f, -0.615f, 0.527f, -0.328f, -0.078f, -0.666f, 0.004f, -0.69f, -0.281f, -0.438f, 0.456f, 0.524f };
  2182.    int lda = 3;
  2183.    float B[] = { -0.648f, -0.189f, -0.295f, 0.477f, 0.509f, 0.685f, 0.875f, 0.277f, -0.34f, -0.632f, -0.453f, -0.798f };
  2184.    int ldb = 3;
  2185.    float B_expected[] = { 0.0203701f, -0.104287f, -0.0084576f, 0.0121508f, -0.0685f, 0.0509f, 0.0245033f, 0.202013f, 0.0268058f, -0.0836134f, 0.0798f, -0.0453f };
  2186.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2187.    {
  2188.      int i;
  2189.      for (i = 0; i < 6; i++) {
  2190.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1759) real");
  2191.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1759) imag");
  2192.      };
  2193.    };
  2194.   };
  2195.  
  2196.  
  2197.   {
  2198.    int order = 101;
  2199.    int side = 142;
  2200.    int uplo = 122;
  2201.    int trans = 112;
  2202.    int diag = 131;
  2203.    int M = 2;
  2204.    int N = 3;
  2205.    float alpha[2] = {0.0f, 0.1f};
  2206.    float A[] = { 0.772f, 0.686f, 0.693f, 0.803f, -0.328f, -0.627f, -0.869f, -0.656f, -0.055f, -0.366f, -0.981f, -0.151f, 0.147f, -0.368f, -0.824f, -0.454f, -0.445f, -0.794f };
  2207.    int lda = 3;
  2208.    float B[] = { -0.268f, -0.521f, -0.685f, -0.618f, 0.508f, 0.525f, -0.492f, -0.502f, -0.997f, 0.28f, 0.63f, 0.664f };
  2209.    int ldb = 3;
  2210.    float B_expected[] = { 0.058606f, 0.015051f, -0.0913257f, -0.0297397f, -0.0205282f, 0.0243534f, 0.0725056f, -0.0035452f, -0.110849f, 0.0255551f, 0.046652f, 0.0938454f };
  2211.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2212.    {
  2213.      int i;
  2214.      for (i = 0; i < 6; i++) {
  2215.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1760) real");
  2216.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1760) imag");
  2217.      };
  2218.    };
  2219.   };
  2220.  
  2221.  
  2222.   {
  2223.    int order = 101;
  2224.    int side = 142;
  2225.    int uplo = 122;
  2226.    int trans = 112;
  2227.    int diag = 132;
  2228.    int M = 2;
  2229.    int N = 3;
  2230.    float alpha[2] = {0.0f, 0.1f};
  2231.    float A[] = { -0.317f, -0.822f, 0.732f, 0.383f, 0.457f, 0.443f, 0.529f, -0.949f, -0.927f, -0.65f, -0.471f, -0.624f, -0.731f, 0.107f, -0.142f, 0.623f, 0.159f, -0.419f };
  2232.    int lda = 3;
  2233.    float B[] = { 0.292f, -0.665f, -0.93f, 0.517f, 0.123f, -0.181f, 0.325f, 0.954f, -0.988f, -0.128f, 0.637f, -0.997f };
  2234.    int ldb = 3;
  2235.    float B_expected[] = { 0.0665f, 0.0292f, 0.0111893f, -0.140662f, 0.0316445f, -0.0209328f, -0.0954f, 0.0325f, -0.0068241f, 0.0089271f, 0.225695f, 0.0517387f };
  2236.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2237.    {
  2238.      int i;
  2239.      for (i = 0; i < 6; i++) {
  2240.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1761) real");
  2241.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1761) imag");
  2242.      };
  2243.    };
  2244.   };
  2245.  
  2246.  
  2247.   {
  2248.    int order = 102;
  2249.    int side = 142;
  2250.    int uplo = 121;
  2251.    int trans = 112;
  2252.    int diag = 131;
  2253.    int M = 2;
  2254.    int N = 3;
  2255.    float alpha[2] = {0.0f, 0.1f};
  2256.    float A[] = { -0.809f, 0.393f, -0.015f, -0.273f, -0.956f, 0.49f, 0.365f, -0.386f, 0.941f, 0.992f, 0.297f, 0.761f, 0.425f, -0.605f, 0.672f, 0.725f, -0.077f, -0.628f };
  2257.    int lda = 3;
  2258.    float B[] = { 0.21f, 0.153f, 0.218f, -0.129f, 0.736f, -0.006f, 0.502f, -0.165f, 0.242f, 0.915f, 0.67f, 0.07f };
  2259.    int ldb = 2;
  2260.    float B_expected[] = { 0.0085068f, 0.069273f, 0.0439562f, 0.0320975f, -0.15148f, 0.0197777f, -0.0875509f, 0.103555f, 0.0222431f, 0.0555986f, 0.042615f, -0.000763f };
  2261.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2262.    {
  2263.      int i;
  2264.      for (i = 0; i < 6; i++) {
  2265.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1762) real");
  2266.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1762) imag");
  2267.      };
  2268.    };
  2269.   };
  2270.  
  2271.  
  2272.   {
  2273.    int order = 102;
  2274.    int side = 142;
  2275.    int uplo = 121;
  2276.    int trans = 112;
  2277.    int diag = 132;
  2278.    int M = 2;
  2279.    int N = 3;
  2280.    float alpha[2] = {0.0f, 0.1f};
  2281.    float A[] = { -0.187f, -0.508f, -0.987f, -0.861f, 0.519f, 0.752f, -0.117f, 0.972f, 0.068f, -0.752f, 0.344f, 0.074f, -0.343f, 0.0f, -0.876f, 0.857f, -0.148f, -0.933f };
  2282.    int lda = 3;
  2283.    float B[] = { 0.827f, 0.958f, 0.395f, 0.878f, 0.88f, -0.896f, -0.771f, -0.355f, -0.979f, 0.329f, -0.166f, -0.644f };
  2284.    int ldb = 2;
  2285.    float B_expected[] = { -0.180535f, 0.193075f, -0.0391015f, 0.0887205f, 0.202321f, 0.145565f, -0.0066882f, -0.0073676f, -0.0329f, -0.0979f, 0.0644f, -0.0166f };
  2286.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2287.    {
  2288.      int i;
  2289.      for (i = 0; i < 6; i++) {
  2290.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1763) real");
  2291.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1763) imag");
  2292.      };
  2293.    };
  2294.   };
  2295.  
  2296.  
  2297.   {
  2298.    int order = 102;
  2299.    int side = 142;
  2300.    int uplo = 122;
  2301.    int trans = 112;
  2302.    int diag = 131;
  2303.    int M = 2;
  2304.    int N = 3;
  2305.    float alpha[2] = {0.0f, 0.1f};
  2306.    float A[] = { -0.622f, 0.022f, -0.966f, 0.704f, 0.43f, -0.451f, -0.221f, 0.969f, 0.977f, 0.021f, -0.725f, -0.382f, 0.779f, 0.957f, 0.25f, 0.832f, 0.029f, -0.903f };
  2307.    int lda = 3;
  2308.    float B[] = { 0.315f, -0.297f, -0.864f, 0.519f, -0.601f, -0.119f, 0.028f, 0.072f, -0.171f, 0.648f, 0.159f, -0.623f };
  2309.    int ldb = 2;
  2310.    float B_expected[] = { -0.0191664f, -0.0189396f, 0.0341826f, 0.052599f, -0.0379778f, -0.067988f, 0.103868f, 0.0495092f, -0.0219287f, 0.0971955f, -0.0388294f, -0.0688205f };
  2311.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2312.    {
  2313.      int i;
  2314.      for (i = 0; i < 6; i++) {
  2315.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1764) real");
  2316.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1764) imag");
  2317.      };
  2318.    };
  2319.   };
  2320.  
  2321.  
  2322.   {
  2323.    int order = 102;
  2324.    int side = 142;
  2325.    int uplo = 122;
  2326.    int trans = 112;
  2327.    int diag = 132;
  2328.    int M = 2;
  2329.    int N = 3;
  2330.    float alpha[2] = {0.0f, 0.1f};
  2331.    float A[] = { 0.106f, 0.87f, 0.21f, 0.463f, -0.496f, -0.981f, -0.354f, -0.604f, -0.149f, -0.384f, -0.958f, -0.502f, -0.579f, 0.736f, -0.322f, 0.028f, 0.193f, 0.14f };
  2332.    int lda = 3;
  2333.    float B[] = { -0.812f, 0.518f, 0.085f, -0.447f, -0.443f, 0.928f, -0.972f, 0.889f, 0.605f, -0.258f, -0.025f, 0.98f };
  2334.    int ldb = 2;
  2335.    float B_expected[] = { -0.0518f, -0.0812f, 0.0447f, 0.0085f, -0.0660824f, -0.0853354f, -0.0834485f, -0.0747189f, 0.0384994f, 0.240616f, -0.0754609f, 0.0871787f };
  2336.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2337.    {
  2338.      int i;
  2339.      for (i = 0; i < 6; i++) {
  2340.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1765) real");
  2341.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1765) imag");
  2342.      };
  2343.    };
  2344.   };
  2345.  
  2346.  
  2347.   {
  2348.    int order = 101;
  2349.    int side = 141;
  2350.    int uplo = 121;
  2351.    int trans = 113;
  2352.    int diag = 131;
  2353.    int M = 2;
  2354.    int N = 3;
  2355.    float alpha[2] = {0.0f, 0.0f};
  2356.    float A[] = { -0.553f, 0.204f, -0.793f, -0.558f, 0.741f, 0.26f, 0.945f, -0.757f };
  2357.    int lda = 2;
  2358.    float B[] = { -0.515f, 0.532f, -0.321f, 0.326f, -0.81f, -0.924f, 0.474f, 0.985f, -0.03f, 0.406f, 0.923f, -0.956f };
  2359.    int ldb = 3;
  2360.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2361.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2362.    {
  2363.      int i;
  2364.      for (i = 0; i < 6; i++) {
  2365.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1766) real");
  2366.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1766) imag");
  2367.      };
  2368.    };
  2369.   };
  2370.  
  2371.  
  2372.   {
  2373.    int order = 101;
  2374.    int side = 141;
  2375.    int uplo = 121;
  2376.    int trans = 113;
  2377.    int diag = 132;
  2378.    int M = 2;
  2379.    int N = 3;
  2380.    float alpha[2] = {0.0f, 0.0f};
  2381.    float A[] = { -0.41f, -0.804f, 0.988f, -0.715f, -0.281f, -0.89f, 0.389f, -0.408f };
  2382.    int lda = 2;
  2383.    float B[] = { 0.917f, 0.541f, -0.108f, -0.965f, 0.524f, 0.04f, -0.736f, -0.643f, -0.202f, 0.86f, 0.346f, -0.017f };
  2384.    int ldb = 3;
  2385.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2386.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2387.    {
  2388.      int i;
  2389.      for (i = 0; i < 6; i++) {
  2390.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1767) real");
  2391.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1767) imag");
  2392.      };
  2393.    };
  2394.   };
  2395.  
  2396.  
  2397.   {
  2398.    int order = 101;
  2399.    int side = 141;
  2400.    int uplo = 122;
  2401.    int trans = 113;
  2402.    int diag = 131;
  2403.    int M = 2;
  2404.    int N = 3;
  2405.    float alpha[2] = {0.0f, 0.0f};
  2406.    float A[] = { 0.153f, -0.812f, -0.742f, -0.18f, 0.473f, 0.023f, -0.433f, 0.559f };
  2407.    int lda = 2;
  2408.    float B[] = { 0.078f, -0.691f, -0.717f, -0.637f, -0.016f, 0.375f, -0.902f, -0.343f, 0.155f, 0.563f, 0.419f, 0.451f };
  2409.    int ldb = 3;
  2410.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2411.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2412.    {
  2413.      int i;
  2414.      for (i = 0; i < 6; i++) {
  2415.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1768) real");
  2416.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1768) imag");
  2417.      };
  2418.    };
  2419.   };
  2420.  
  2421.  
  2422.   {
  2423.    int order = 101;
  2424.    int side = 141;
  2425.    int uplo = 122;
  2426.    int trans = 113;
  2427.    int diag = 132;
  2428.    int M = 2;
  2429.    int N = 3;
  2430.    float alpha[2] = {0.0f, 0.0f};
  2431.    float A[] = { -0.288f, 0.241f, 0.593f, -0.597f, -0.469f, 0.735f, 0.193f, -0.104f };
  2432.    int lda = 2;
  2433.    float B[] = { -0.835f, 0.037f, -0.762f, 0.782f, -0.874f, -0.867f, -0.81f, -0.577f, 0.352f, 0.827f, 0.237f, -0.861f };
  2434.    int ldb = 3;
  2435.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2436.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2437.    {
  2438.      int i;
  2439.      for (i = 0; i < 6; i++) {
  2440.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1769) real");
  2441.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1769) imag");
  2442.      };
  2443.    };
  2444.   };
  2445.  
  2446.  
  2447.   {
  2448.    int order = 102;
  2449.    int side = 141;
  2450.    int uplo = 121;
  2451.    int trans = 113;
  2452.    int diag = 131;
  2453.    int M = 2;
  2454.    int N = 3;
  2455.    float alpha[2] = {0.0f, 0.0f};
  2456.    float A[] = { 0.441f, -0.217f, 0.679f, 0.106f, -0.76f, -0.258f, -0.956f, -0.858f };
  2457.    int lda = 2;
  2458.    float B[] = { -0.802f, 0.163f, 0.293f, 0.54f, 0.228f, 0.071f, 0.942f, 0.345f, 0.591f, 0.654f, 0.382f, -0.892f };
  2459.    int ldb = 2;
  2460.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2461.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2462.    {
  2463.      int i;
  2464.      for (i = 0; i < 6; i++) {
  2465.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1770) real");
  2466.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1770) imag");
  2467.      };
  2468.    };
  2469.   };
  2470.  
  2471.  
  2472.   {
  2473.    int order = 102;
  2474.    int side = 141;
  2475.    int uplo = 121;
  2476.    int trans = 113;
  2477.    int diag = 132;
  2478.    int M = 2;
  2479.    int N = 3;
  2480.    float alpha[2] = {0.0f, 0.0f};
  2481.    float A[] = { 0.916f, 0.909f, 0.834f, 0.38f, 0.391f, -0.412f, -0.714f, -0.456f };
  2482.    int lda = 2;
  2483.    float B[] = { -0.151f, 0.818f, 0.717f, -0.812f, -0.649f, -0.107f, -0.454f, 0.785f, 0.86f, 0.992f, -0.244f, -0.242f };
  2484.    int ldb = 2;
  2485.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2486.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2487.    {
  2488.      int i;
  2489.      for (i = 0; i < 6; i++) {
  2490.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1771) real");
  2491.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1771) imag");
  2492.      };
  2493.    };
  2494.   };
  2495.  
  2496.  
  2497.   {
  2498.    int order = 102;
  2499.    int side = 141;
  2500.    int uplo = 122;
  2501.    int trans = 113;
  2502.    int diag = 131;
  2503.    int M = 2;
  2504.    int N = 3;
  2505.    float alpha[2] = {0.0f, 0.0f};
  2506.    float A[] = { -0.992f, 0.284f, -0.01f, 0.182f, 0.527f, -0.348f, -0.509f, 0.839f };
  2507.    int lda = 2;
  2508.    float B[] = { 0.504f, -0.782f, -0.88f, 0.079f, 0.216f, 0.525f, 0.198f, 0.851f, -0.102f, -0.046f, 0.079f, -0.045f };
  2509.    int ldb = 2;
  2510.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2511.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2512.    {
  2513.      int i;
  2514.      for (i = 0; i < 6; i++) {
  2515.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1772) real");
  2516.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1772) imag");
  2517.      };
  2518.    };
  2519.   };
  2520.  
  2521.  
  2522.   {
  2523.    int order = 102;
  2524.    int side = 141;
  2525.    int uplo = 122;
  2526.    int trans = 113;
  2527.    int diag = 132;
  2528.    int M = 2;
  2529.    int N = 3;
  2530.    float alpha[2] = {0.0f, 0.0f};
  2531.    float A[] = { 0.985f, 0.068f, -0.095f, -0.575f, -0.607f, 0.893f, 0.085f, 0.145f };
  2532.    int lda = 2;
  2533.    float B[] = { -0.149f, 0.592f, 0.588f, -0.62f, -0.409f, -0.344f, 0.263f, 0.759f, -0.026f, -0.609f, 0.507f, -0.084f };
  2534.    int ldb = 2;
  2535.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2536.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2537.    {
  2538.      int i;
  2539.      for (i = 0; i < 6; i++) {
  2540.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1773) real");
  2541.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1773) imag");
  2542.      };
  2543.    };
  2544.   };
  2545.  
  2546.  
  2547.   {
  2548.    int order = 101;
  2549.    int side = 142;
  2550.    int uplo = 121;
  2551.    int trans = 113;
  2552.    int diag = 131;
  2553.    int M = 2;
  2554.    int N = 3;
  2555.    float alpha[2] = {0.0f, 0.0f};
  2556.    float A[] = { 0.36f, 0.508f, -0.771f, -0.442f, -0.671f, -0.691f, -0.771f, 0.113f, 0.282f, 0.312f, 0.564f, -0.568f, -0.743f, 0.912f, -0.395f, 0.503f, -0.167f, -0.581f };
  2557.    int lda = 3;
  2558.    float B[] = { -0.018f, 0.574f, -0.144f, -0.758f, 0.53f, 0.623f, -0.771f, -0.733f, 0.932f, -0.192f, 0.997f, 0.773f };
  2559.    int ldb = 3;
  2560.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2561.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2562.    {
  2563.      int i;
  2564.      for (i = 0; i < 6; i++) {
  2565.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1774) real");
  2566.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1774) imag");
  2567.      };
  2568.    };
  2569.   };
  2570.  
  2571.  
  2572.   {
  2573.    int order = 101;
  2574.    int side = 142;
  2575.    int uplo = 121;
  2576.    int trans = 113;
  2577.    int diag = 132;
  2578.    int M = 2;
  2579.    int N = 3;
  2580.    float alpha[2] = {0.0f, 0.0f};
  2581.    float A[] = { -0.627f, 0.511f, -0.246f, -0.091f, 0.66f, -0.983f, 0.99f, 0.057f, -0.259f, 0.18f, 0.606f, 0.058f, -0.238f, 0.717f, 0.358f, -0.851f, -0.71f, -0.683f };
  2582.    int lda = 3;
  2583.    float B[] = { -0.907f, 0.956f, 0.56f, -0.057f, 0.054f, -0.77f, 0.868f, -0.843f, 0.645f, -0.554f, -0.958f, 0.988f };
  2584.    int ldb = 3;
  2585.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2586.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2587.    {
  2588.      int i;
  2589.      for (i = 0; i < 6; i++) {
  2590.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1775) real");
  2591.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1775) imag");
  2592.      };
  2593.    };
  2594.   };
  2595.  
  2596.  
  2597.   {
  2598.    int order = 101;
  2599.    int side = 142;
  2600.    int uplo = 122;
  2601.    int trans = 113;
  2602.    int diag = 131;
  2603.    int M = 2;
  2604.    int N = 3;
  2605.    float alpha[2] = {0.0f, 0.0f};
  2606.    float A[] = { -0.882f, 0.431f, -0.868f, -0.098f, -0.006f, -0.639f, 0.757f, -0.009f, -0.821f, 0.45f, 0.347f, 0.801f, 0.314f, 0.936f, -0.725f, 0.956f, 0.536f, 0.771f };
  2607.    int lda = 3;
  2608.    float B[] = { 0.38f, -0.435f, 0.977f, 0.296f, -0.624f, -0.53f, 0.73f, -0.837f, 0.105f, 0.189f, 0.362f, -0.664f };
  2609.    int ldb = 3;
  2610.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2611.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2612.    {
  2613.      int i;
  2614.      for (i = 0; i < 6; i++) {
  2615.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1776) real");
  2616.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1776) imag");
  2617.      };
  2618.    };
  2619.   };
  2620.  
  2621.  
  2622.   {
  2623.    int order = 101;
  2624.    int side = 142;
  2625.    int uplo = 122;
  2626.    int trans = 113;
  2627.    int diag = 132;
  2628.    int M = 2;
  2629.    int N = 3;
  2630.    float alpha[2] = {0.0f, 0.0f};
  2631.    float A[] = { 0.595f, -0.775f, 0.75f, 0.16f, -0.572f, 0.658f, 0.216f, 0.557f, -0.279f, 0.095f, -0.495f, 0.503f, 0.071f, -0.03f, -0.116f, 0.78f, -0.104f, 0.073f };
  2632.    int lda = 3;
  2633.    float B[] = { 0.948f, 0.749f, -0.854f, 0.972f, 0.704f, 0.187f, 0.347f, 0.303f, -0.865f, 0.123f, -0.041f, 0.152f };
  2634.    int ldb = 3;
  2635.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2636.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2637.    {
  2638.      int i;
  2639.      for (i = 0; i < 6; i++) {
  2640.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1777) real");
  2641.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1777) imag");
  2642.      };
  2643.    };
  2644.   };
  2645.  
  2646.  
  2647.   {
  2648.    int order = 102;
  2649.    int side = 142;
  2650.    int uplo = 121;
  2651.    int trans = 113;
  2652.    int diag = 131;
  2653.    int M = 2;
  2654.    int N = 3;
  2655.    float alpha[2] = {0.0f, 0.0f};
  2656.    float A[] = { -0.617f, -0.331f, -0.074f, 0.719f, -0.469f, -0.852f, 0.25f, -0.175f, -0.719f, -0.613f, -0.321f, 0.973f, -0.337f, -0.35f, 0.607f, -0.553f, 0.688f, 0.463f };
  2657.    int lda = 3;
  2658.    float B[] = { 0.568f, -0.471f, -0.947f, -0.205f, 0.835f, -0.859f, 0.27f, -0.599f, 0.171f, -0.514f, 0.939f, 0.176f };
  2659.    int ldb = 2;
  2660.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2661.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2662.    {
  2663.      int i;
  2664.      for (i = 0; i < 6; i++) {
  2665.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1778) real");
  2666.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1778) imag");
  2667.      };
  2668.    };
  2669.   };
  2670.  
  2671.  
  2672.   {
  2673.    int order = 102;
  2674.    int side = 142;
  2675.    int uplo = 121;
  2676.    int trans = 113;
  2677.    int diag = 132;
  2678.    int M = 2;
  2679.    int N = 3;
  2680.    float alpha[2] = {0.0f, 0.0f};
  2681.    float A[] = { 0.99f, -0.857f, 0.728f, -0.31f, -0.506f, -0.393f, 0.97f, 0.282f, 0.375f, -0.286f, -0.496f, -0.057f, 0.186f, -0.34f, 0.608f, -0.52f, 0.921f, -0.875f };
  2682.    int lda = 3;
  2683.    float B[] = { -0.929f, 0.885f, 0.864f, -0.548f, 0.393f, 0.391f, 0.033f, 0.186f, 0.949f, -0.435f, 0.986f, -0.995f };
  2684.    int ldb = 2;
  2685.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2686.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2687.    {
  2688.      int i;
  2689.      for (i = 0; i < 6; i++) {
  2690.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1779) real");
  2691.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1779) imag");
  2692.      };
  2693.    };
  2694.   };
  2695.  
  2696.  
  2697.   {
  2698.    int order = 102;
  2699.    int side = 142;
  2700.    int uplo = 122;
  2701.    int trans = 113;
  2702.    int diag = 131;
  2703.    int M = 2;
  2704.    int N = 3;
  2705.    float alpha[2] = {0.0f, 0.0f};
  2706.    float A[] = { -0.101f, -0.92f, 0.969f, -0.017f, -0.016f, -0.024f, -0.11f, 0.219f, -0.287f, -0.937f, 0.619f, 0.166f, -0.068f, 0.753f, 0.374f, 0.076f, 0.79f, -0.64f };
  2707.    int lda = 3;
  2708.    float B[] = { 0.255f, 0.564f, -0.478f, -0.818f, -0.043f, 0.224f, -0.268f, 0.253f, 0.021f, 0.654f, 0.98f, -0.774f };
  2709.    int ldb = 2;
  2710.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2711.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2712.    {
  2713.      int i;
  2714.      for (i = 0; i < 6; i++) {
  2715.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1780) real");
  2716.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1780) imag");
  2717.      };
  2718.    };
  2719.   };
  2720.  
  2721.  
  2722.   {
  2723.    int order = 102;
  2724.    int side = 142;
  2725.    int uplo = 122;
  2726.    int trans = 113;
  2727.    int diag = 132;
  2728.    int M = 2;
  2729.    int N = 3;
  2730.    float alpha[2] = {0.0f, 0.0f};
  2731.    float A[] = { -0.068f, -0.603f, -0.055f, 0.14f, 0.664f, 0.987f, 0.861f, -0.691f, -0.897f, -0.778f, 0.516f, -0.073f, -0.156f, -0.42f, 0.57f, 0.628f, 0.116f, 0.344f };
  2732.    int lda = 3;
  2733.    float B[] = { 0.922f, 0.39f, -0.724f, 0.421f, 0.418f, 0.92f, -0.222f, 0.835f, 0.417f, -0.392f, 0.012f, -0.346f };
  2734.    int ldb = 2;
  2735.    float B_expected[] = { 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f };
  2736.    cblas_ctrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2737.    {
  2738.      int i;
  2739.      for (i = 0; i < 6; i++) {
  2740.        gsl_test_rel(B[2*i], B_expected[2*i], flteps, "ctrmm(case 1781) real");
  2741.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], flteps, "ctrmm(case 1781) imag");
  2742.      };
  2743.    };
  2744.   };
  2745.  
  2746.  
  2747.   {
  2748.    int order = 101;
  2749.    int side = 141;
  2750.    int uplo = 121;
  2751.    int trans = 111;
  2752.    int diag = 131;
  2753.    int M = 2;
  2754.    int N = 3;
  2755.    double alpha[2] = {0, 0};
  2756.    double A[] = { 0.904, 0.243, 0.206, 0.68, -0.946, 0.946, -0.675, 0.729 };
  2757.    int lda = 2;
  2758.    double B[] = { 0.427, 0.116, 0.916, -0.384, -0.372, -0.754, 0.148, 0.089, -0.924, 0.974, -0.307, -0.55 };
  2759.    int ldb = 3;
  2760.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2761.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2762.    {
  2763.      int i;
  2764.      for (i = 0; i < 6; i++) {
  2765.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1782) real");
  2766.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1782) imag");
  2767.      };
  2768.    };
  2769.   };
  2770.  
  2771.  
  2772.   {
  2773.    int order = 101;
  2774.    int side = 141;
  2775.    int uplo = 121;
  2776.    int trans = 111;
  2777.    int diag = 132;
  2778.    int M = 2;
  2779.    int N = 3;
  2780.    double alpha[2] = {0, 0};
  2781.    double A[] = { -0.898, 0.709, 0.719, -0.207, -0.841, -0.017, 0.202, -0.385 };
  2782.    int lda = 2;
  2783.    double B[] = { 0.308, 0.507, -0.838, 0.594, -0.811, 0.152, 0.118, -0.024, -0.632, 0.992, -0.942, 0.901 };
  2784.    int ldb = 3;
  2785.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2786.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2787.    {
  2788.      int i;
  2789.      for (i = 0; i < 6; i++) {
  2790.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1783) real");
  2791.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1783) imag");
  2792.      };
  2793.    };
  2794.   };
  2795.  
  2796.  
  2797.   {
  2798.    int order = 101;
  2799.    int side = 141;
  2800.    int uplo = 122;
  2801.    int trans = 111;
  2802.    int diag = 131;
  2803.    int M = 2;
  2804.    int N = 3;
  2805.    double alpha[2] = {0, 0};
  2806.    double A[] = { -0.849, 0.455, -0.273, -0.668, 0.196, -0.985, -0.39, 0.564 };
  2807.    int lda = 2;
  2808.    double B[] = { -0.874, 0.188, -0.039, 0.692, 0.33, 0.119, 0.012, 0.425, 0.787, -0.918, 0.739, -0.871 };
  2809.    int ldb = 3;
  2810.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2811.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2812.    {
  2813.      int i;
  2814.      for (i = 0; i < 6; i++) {
  2815.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1784) real");
  2816.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1784) imag");
  2817.      };
  2818.    };
  2819.   };
  2820.  
  2821.  
  2822.   {
  2823.    int order = 101;
  2824.    int side = 141;
  2825.    int uplo = 122;
  2826.    int trans = 111;
  2827.    int diag = 132;
  2828.    int M = 2;
  2829.    int N = 3;
  2830.    double alpha[2] = {0, 0};
  2831.    double A[] = { -0.325, 0.28, 0.902, -0.603, 0.091, -0.92, 0.209, -0.009 };
  2832.    int lda = 2;
  2833.    double B[] = { -0.202, -0.53, -0.88, -0.688, -0.215, 0.837, 0.917, 0.755, 0.477, 0.892, -0.524, -0.741 };
  2834.    int ldb = 3;
  2835.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2836.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2837.    {
  2838.      int i;
  2839.      for (i = 0; i < 6; i++) {
  2840.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1785) real");
  2841.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1785) imag");
  2842.      };
  2843.    };
  2844.   };
  2845.  
  2846.  
  2847.   {
  2848.    int order = 102;
  2849.    int side = 141;
  2850.    int uplo = 121;
  2851.    int trans = 111;
  2852.    int diag = 131;
  2853.    int M = 2;
  2854.    int N = 3;
  2855.    double alpha[2] = {0, 0};
  2856.    double A[] = { -0.756, 0.874, 0.56, 0.157, -0.831, -0.991, -0.531, 0.813 };
  2857.    int lda = 2;
  2858.    double B[] = { 0.271, 0.783, -0.861, 0.635, -0.088, 0.434, 0.256, -0.34, -0.724, -0.277, -0.604, 0.986 };
  2859.    int ldb = 2;
  2860.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2861.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2862.    {
  2863.      int i;
  2864.      for (i = 0; i < 6; i++) {
  2865.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1786) real");
  2866.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1786) imag");
  2867.      };
  2868.    };
  2869.   };
  2870.  
  2871.  
  2872.   {
  2873.    int order = 102;
  2874.    int side = 141;
  2875.    int uplo = 121;
  2876.    int trans = 111;
  2877.    int diag = 132;
  2878.    int M = 2;
  2879.    int N = 3;
  2880.    double alpha[2] = {0, 0};
  2881.    double A[] = { -0.371, -0.609, -0.812, -0.818, 0.45, -0.41, -0.704, -0.917 };
  2882.    int lda = 2;
  2883.    double B[] = { -0.268, 0.929, 0.82, 0.253, -0.883, 0.497, -0.265, 0.623, 0.131, -0.946, -0.365, 0.333 };
  2884.    int ldb = 2;
  2885.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2886.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2887.    {
  2888.      int i;
  2889.      for (i = 0; i < 6; i++) {
  2890.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1787) real");
  2891.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1787) imag");
  2892.      };
  2893.    };
  2894.   };
  2895.  
  2896.  
  2897.   {
  2898.    int order = 102;
  2899.    int side = 141;
  2900.    int uplo = 122;
  2901.    int trans = 111;
  2902.    int diag = 131;
  2903.    int M = 2;
  2904.    int N = 3;
  2905.    double alpha[2] = {0, 0};
  2906.    double A[] = { -0.265, 0.8, -0.676, -0.592, 0.78, -0.838, -0.651, 0.115 };
  2907.    int lda = 2;
  2908.    double B[] = { 0.942, 0.692, -0.516, 0.378, 0.028, 0.265, 0.289, -0.721, -0.25, -0.952, 0.463, -0.34 };
  2909.    int ldb = 2;
  2910.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2911.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2912.    {
  2913.      int i;
  2914.      for (i = 0; i < 6; i++) {
  2915.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1788) real");
  2916.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1788) imag");
  2917.      };
  2918.    };
  2919.   };
  2920.  
  2921.  
  2922.   {
  2923.    int order = 102;
  2924.    int side = 141;
  2925.    int uplo = 122;
  2926.    int trans = 111;
  2927.    int diag = 132;
  2928.    int M = 2;
  2929.    int N = 3;
  2930.    double alpha[2] = {0, 0};
  2931.    double A[] = { -0.852, -0.478, 0.16, 0.824, 0.073, 0.962, 0.509, -0.58 };
  2932.    int lda = 2;
  2933.    double B[] = { -0.789, 0.015, -0.779, -0.565, 0.048, -0.095, -0.272, 0.405, 0.272, 0.082, -0.693, -0.365 };
  2934.    int ldb = 2;
  2935.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2936.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2937.    {
  2938.      int i;
  2939.      for (i = 0; i < 6; i++) {
  2940.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1789) real");
  2941.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1789) imag");
  2942.      };
  2943.    };
  2944.   };
  2945.  
  2946.  
  2947.   {
  2948.    int order = 101;
  2949.    int side = 142;
  2950.    int uplo = 121;
  2951.    int trans = 111;
  2952.    int diag = 131;
  2953.    int M = 2;
  2954.    int N = 3;
  2955.    double alpha[2] = {0, 0};
  2956.    double A[] = { 0.251, 0.28, -0.092, 0.724, 0.928, -0.309, -0.222, -0.791, 0.113, -0.528, 0.148, 0.421, -0.833, 0.371, 0.354, 0.616, 0.313, 0.323 };
  2957.    int lda = 3;
  2958.    double B[] = { -0.769, -0.059, -0.068, 0.945, 0.938, -0.358, -0.17, 0.751, -0.248, -0.321, -0.818, 0.183 };
  2959.    int ldb = 3;
  2960.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2961.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2962.    {
  2963.      int i;
  2964.      for (i = 0; i < 6; i++) {
  2965.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1790) real");
  2966.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1790) imag");
  2967.      };
  2968.    };
  2969.   };
  2970.  
  2971.  
  2972.   {
  2973.    int order = 101;
  2974.    int side = 142;
  2975.    int uplo = 121;
  2976.    int trans = 111;
  2977.    int diag = 132;
  2978.    int M = 2;
  2979.    int N = 3;
  2980.    double alpha[2] = {0, 0};
  2981.    double A[] = { -0.707, -0.802, 0.13, -0.19, -0.564, -0.74, 0.118, -0.194, -0.124, -0.421, 0.665, 0.308, 0.505, -0.278, 0.588, 0.957, -0.727, 0.976 };
  2982.    int lda = 3;
  2983.    double B[] = { 0.153, -0.09, -0.4, 0.669, 0.689, -0.238, -0.259, 0.891, 0.993, 0.996, -0.829, -0.736 };
  2984.    int ldb = 3;
  2985.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  2986.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  2987.    {
  2988.      int i;
  2989.      for (i = 0; i < 6; i++) {
  2990.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1791) real");
  2991.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1791) imag");
  2992.      };
  2993.    };
  2994.   };
  2995.  
  2996.  
  2997.   {
  2998.    int order = 101;
  2999.    int side = 142;
  3000.    int uplo = 122;
  3001.    int trans = 111;
  3002.    int diag = 131;
  3003.    int M = 2;
  3004.    int N = 3;
  3005.    double alpha[2] = {0, 0};
  3006.    double A[] = { 0.83, 0.316, -0.099, 0.824, 0.767, 0.662, 0.244, 0.872, 0.35, 0.969, -0.084, 0.907, -0.752, -0.675, 0.129, -0.649, -0.539, 0.969 };
  3007.    int lda = 3;
  3008.    double B[] = { -0.145, 0.254, -0.497, -0.713, -0.742, 0.183, 0.272, -0.858, -0.606, -0.605, -0.807, 0.686 };
  3009.    int ldb = 3;
  3010.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  3011.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3012.    {
  3013.      int i;
  3014.      for (i = 0; i < 6; i++) {
  3015.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1792) real");
  3016.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1792) imag");
  3017.      };
  3018.    };
  3019.   };
  3020.  
  3021.  
  3022.   {
  3023.    int order = 101;
  3024.    int side = 142;
  3025.    int uplo = 122;
  3026.    int trans = 111;
  3027.    int diag = 132;
  3028.    int M = 2;
  3029.    int N = 3;
  3030.    double alpha[2] = {0, 0};
  3031.    double A[] = { -0.091, 0.658, -0.834, -0.171, -0.126, -0.268, 0.879, -0.431, 0.678, -0.749, 0.136, -0.757, -0.578, 0.456, 0.978, -0.315, 0.333, 0.327 };
  3032.    int lda = 3;
  3033.    double B[] = { 0.963, -0.859, 0.599, 0.856, -0.924, 0.382, -0.531, 0.567, -0.454, 0.018, 0.97, 0.578 };
  3034.    int ldb = 3;
  3035.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  3036.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3037.    {
  3038.      int i;
  3039.      for (i = 0; i < 6; i++) {
  3040.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1793) real");
  3041.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1793) imag");
  3042.      };
  3043.    };
  3044.   };
  3045.  
  3046.  
  3047.   {
  3048.    int order = 102;
  3049.    int side = 142;
  3050.    int uplo = 121;
  3051.    int trans = 111;
  3052.    int diag = 131;
  3053.    int M = 2;
  3054.    int N = 3;
  3055.    double alpha[2] = {0, 0};
  3056.    double A[] = { -0.849, -0.819, 0.673, 0.574, -0.869, -0.969, -0.338, -0.097, -0.601, 0.903, 0.634, 0.313, 0.228, -0.028, 0.419, -0.762, 0.21, -0.532 };
  3057.    int lda = 3;
  3058.    double B[] = { -0.283, 0.999, -0.356, -0.459, 0.508, -0.132, -0.804, 0.173, 0.779, -0.427, 0.019, 0.347 };
  3059.    int ldb = 2;
  3060.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  3061.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3062.    {
  3063.      int i;
  3064.      for (i = 0; i < 6; i++) {
  3065.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1794) real");
  3066.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1794) imag");
  3067.      };
  3068.    };
  3069.   };
  3070.  
  3071.  
  3072.   {
  3073.    int order = 102;
  3074.    int side = 142;
  3075.    int uplo = 121;
  3076.    int trans = 111;
  3077.    int diag = 132;
  3078.    int M = 2;
  3079.    int N = 3;
  3080.    double alpha[2] = {0, 0};
  3081.    double A[] = { -0.117, -0.663, -0.95, -0.273, -0.497, -0.037, 0.084, -0.831, 0.023, -0.241, 0.063, -0.023, -0.498, -0.137, -0.77, 0.457, -0.021, -0.69 };
  3082.    int lda = 3;
  3083.    double B[] = { 0.308, -0.004, 0.013, 0.354, 0.077, -0.944, -0.877, 0.741, -0.807, -0.3, 0.891, -0.056 };
  3084.    int ldb = 2;
  3085.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  3086.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3087.    {
  3088.      int i;
  3089.      for (i = 0; i < 6; i++) {
  3090.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1795) real");
  3091.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1795) imag");
  3092.      };
  3093.    };
  3094.   };
  3095.  
  3096.  
  3097.   {
  3098.    int order = 102;
  3099.    int side = 142;
  3100.    int uplo = 122;
  3101.    int trans = 111;
  3102.    int diag = 131;
  3103.    int M = 2;
  3104.    int N = 3;
  3105.    double alpha[2] = {0, 0};
  3106.    double A[] = { -0.964, -0.653, 0.379, 0.994, -0.378, -0.409, 0.24, -0.333, 0.558, -0.099, -0.402, -0.812, 0.421, 0.823, -0.771, 0.998, 0.697, 0.253 };
  3107.    int lda = 3;
  3108.    double B[] = { 0.34, 0.479, 0.539, -0.133, 0.876, -0.347, 0.706, -0.623, 0.399, 0.903, -0.7, -0.088 };
  3109.    int ldb = 2;
  3110.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  3111.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3112.    {
  3113.      int i;
  3114.      for (i = 0; i < 6; i++) {
  3115.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1796) real");
  3116.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1796) imag");
  3117.      };
  3118.    };
  3119.   };
  3120.  
  3121.  
  3122.   {
  3123.    int order = 102;
  3124.    int side = 142;
  3125.    int uplo = 122;
  3126.    int trans = 111;
  3127.    int diag = 132;
  3128.    int M = 2;
  3129.    int N = 3;
  3130.    double alpha[2] = {0, 0};
  3131.    double A[] = { -0.104, 0.643, -0.253, -0.988, -0.051, -0.805, 0.451, -0.421, -0.177, -0.534, -0.714, -0.581, -0.177, -0.582, -0.57, 0.259, -0.66, -0.864 };
  3132.    int lda = 3;
  3133.    double B[] = { 0.636, -0.365, -0.107, -0.279, 0.425, 0.976, 0.657, 0.294, 0.827, 0.187, 0.353, 0.31 };
  3134.    int ldb = 2;
  3135.    double B_expected[] = { 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0 };
  3136.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3137.    {
  3138.      int i;
  3139.      for (i = 0; i < 6; i++) {
  3140.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1797) real");
  3141.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1797) imag");
  3142.      };
  3143.    };
  3144.   };
  3145.  
  3146.  
  3147.   {
  3148.    int order = 101;
  3149.    int side = 141;
  3150.    int uplo = 121;
  3151.    int trans = 112;
  3152.    int diag = 131;
  3153.    int M = 2;
  3154.    int N = 3;
  3155.    double alpha[2] = {-0.3, 0.1};
  3156.    double A[] = { 0.273, 0.812, 0.295, -0.415, -0.227, 0.901, 0.623, 0.786 };
  3157.    int lda = 2;
  3158.    double B[] = { -0.539, -0.551, -0.969, 0.09, -0.581, -0.594, -0.833, 0.457, -0.284, 0.434, -0.459, -0.662 };
  3159.    int ldb = 3;
  3160.    double B_expected[] = { -0.0312704, 0.2064538, 0.1775109, 0.1949157, -0.0337211, 0.2225517, 0.410638, -0.033917, 0.182384, -0.219409, 0.1257905, 0.1938415 };
  3161.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3162.    {
  3163.      int i;
  3164.      for (i = 0; i < 6; i++) {
  3165.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1798) real");
  3166.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1798) imag");
  3167.      };
  3168.    };
  3169.   };
  3170.  
  3171.  
  3172.   {
  3173.    int order = 101;
  3174.    int side = 141;
  3175.    int uplo = 121;
  3176.    int trans = 112;
  3177.    int diag = 132;
  3178.    int M = 2;
  3179.    int N = 3;
  3180.    double alpha[2] = {-0.3, 0.1};
  3181.    double A[] = { 0.323, 0.02, 0.718, 0.152, 0.665, 0.289, 0.317, 0.705 };
  3182.    int lda = 2;
  3183.    double B[] = { 0.448, -0.75, 0.851, 0.172, -0.244, 0.398, 0.602, 0.31, -0.017, 0.181, -0.119, 0.402 };
  3184.    int ldb = 3;
  3185.    double B_expected[] = { -0.0594, 0.2698, -0.2725, 0.0335, 0.0334, -0.1438, -0.2952588, 0.1518876, -0.213747, -0.073367, 0.0413388, -0.2306716 };
  3186.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3187.    {
  3188.      int i;
  3189.      for (i = 0; i < 6; i++) {
  3190.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1799) real");
  3191.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1799) imag");
  3192.      };
  3193.    };
  3194.   };
  3195.  
  3196.  
  3197.   {
  3198.    int order = 101;
  3199.    int side = 141;
  3200.    int uplo = 122;
  3201.    int trans = 112;
  3202.    int diag = 131;
  3203.    int M = 2;
  3204.    int N = 3;
  3205.    double alpha[2] = {-0.3, 0.1};
  3206.    double A[] = { -0.578, 0.018, -0.093, 0.964, 0.414, -0.729, 0.696, 0.874 };
  3207.    int lda = 2;
  3208.    double B[] = { -0.735, 0.788, -0.942, -0.71, -0.254, 0.265, 0.304, 0.218, 0.247, -0.172, 0.419, 0.448 };
  3209.    int ldb = 3;
  3210.    double B_expected[] = { -0.1486214, 0.2495598, -0.1744531, 0.0107667, -0.1648579, 0.1475263, -0.048058, -0.123122, -0.1062886, 0.0033742, -0.037823, -0.213397 };
  3211.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3212.    {
  3213.      int i;
  3214.      for (i = 0; i < 6; i++) {
  3215.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1800) real");
  3216.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1800) imag");
  3217.      };
  3218.    };
  3219.   };
  3220.  
  3221.  
  3222.   {
  3223.    int order = 101;
  3224.    int side = 141;
  3225.    int uplo = 122;
  3226.    int trans = 112;
  3227.    int diag = 132;
  3228.    int M = 2;
  3229.    int N = 3;
  3230.    double alpha[2] = {-0.3, 0.1};
  3231.    double A[] = { 0.358, -0.773, -0.065, 0.532, -0.319, 0.455, 0.578, 0.493 };
  3232.    int lda = 2;
  3233.    double B[] = { 0.744, -0.958, 0.162, 0.555, -0.131, 0.971, -0.467, 0.175, -0.794, 0.191, 0.361, 0.882 };
  3234.    int ldb = 3;
  3235.    double B_expected[] = { -0.1213734, 0.4492278, -0.1117944, -0.0070022, 0.108851, -0.320916, 0.1226, -0.0992, 0.2191, -0.1367, -0.1965, -0.2285 };
  3236.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3237.    {
  3238.      int i;
  3239.      for (i = 0; i < 6; i++) {
  3240.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1801) real");
  3241.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1801) imag");
  3242.      };
  3243.    };
  3244.   };
  3245.  
  3246.  
  3247.   {
  3248.    int order = 102;
  3249.    int side = 141;
  3250.    int uplo = 121;
  3251.    int trans = 112;
  3252.    int diag = 131;
  3253.    int M = 2;
  3254.    int N = 3;
  3255.    double alpha[2] = {-0.3, 0.1};
  3256.    double A[] = { -0.354, -0.504, -0.177, 0.186, -0.762, -0.506, 0.758, -0.994 };
  3257.    int lda = 2;
  3258.    double B[] = { -0.944, 0.562, 0.142, 0.742, 0.632, -0.627, -0.101, 0.476, 0.476, 0.675, 0.912, -0.33 };
  3259.    int ldb = 2;
  3260.    double B_expected[] = { -0.21291, -0.021306, -0.601736, 0.043676, 0.1715778, -0.0250026, 0.0587596, -0.2259812, -0.0036234, 0.1608258, 0.0885532, 0.6077736 };
  3261.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3262.    {
  3263.      int i;
  3264.      for (i = 0; i < 6; i++) {
  3265.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1802) real");
  3266.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1802) imag");
  3267.      };
  3268.    };
  3269.   };
  3270.  
  3271.  
  3272.   {
  3273.    int order = 102;
  3274.    int side = 141;
  3275.    int uplo = 121;
  3276.    int trans = 112;
  3277.    int diag = 132;
  3278.    int M = 2;
  3279.    int N = 3;
  3280.    double alpha[2] = {-0.3, 0.1};
  3281.    double A[] = { -0.001, 0.015, 0.942, 0.497, -0.104, 0.803, 0.679, 0.026 };
  3282.    int lda = 2;
  3283.    double B[] = { 0.889, -0.216, -0.912, -0.263, -0.329, 0.681, 0.332, -0.5, -0.484, 0.741, -0.728, -0.912 };
  3284.    int ldb = 2;
  3285.    double B_expected[] = { -0.2451, 0.1537, 0.2019693, -0.2251001, 0.0306, -0.2372, 0.1376892, 0.2324406, 0.0711, -0.2707, 0.5195777, 0.2860461 };
  3286.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3287.    {
  3288.      int i;
  3289.      for (i = 0; i < 6; i++) {
  3290.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1803) real");
  3291.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1803) imag");
  3292.      };
  3293.    };
  3294.   };
  3295.  
  3296.  
  3297.   {
  3298.    int order = 102;
  3299.    int side = 141;
  3300.    int uplo = 122;
  3301.    int trans = 112;
  3302.    int diag = 131;
  3303.    int M = 2;
  3304.    int N = 3;
  3305.    double alpha[2] = {-0.3, 0.1};
  3306.    double A[] = { -0.563, 0.394, -0.902, -0.27, 0.461, 0.939, -0.597, 0.803 };
  3307.    int lda = 2;
  3308.    double B[] = { 0.535, -0.111, 0.379, -0.036, 0.803, -0.341, 0.667, 0.001, 0.775, 0.714, 0.908, -0.508 };
  3309.    int ldb = 2;
  3310.    double B_expected[] = { 0.1623722, -0.1219324, 0.0266236, -0.1174842, 0.2429924, -0.1901218, 0.0662002, -0.2004014, 0.4905027, -0.2023089, -0.0629944, -0.3231352 };
  3311.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3312.    {
  3313.      int i;
  3314.      for (i = 0; i < 6; i++) {
  3315.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1804) real");
  3316.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1804) imag");
  3317.      };
  3318.    };
  3319.   };
  3320.  
  3321.  
  3322.   {
  3323.    int order = 102;
  3324.    int side = 141;
  3325.    int uplo = 122;
  3326.    int trans = 112;
  3327.    int diag = 132;
  3328.    int M = 2;
  3329.    int N = 3;
  3330.    double alpha[2] = {-0.3, 0.1};
  3331.    double A[] = { 0.159, 0.032, 0.785, 0.049, -0.128, 0.132, -0.735, -0.235 };
  3332.    int lda = 2;
  3333.    double B[] = { -0.331, -0.257, -0.725, 0.689, -0.793, 0.398, 0.127, -0.098, -0.498, -0.307, -0.019, 0.517 };
  3334.    int ldb = 2;
  3335.    double B_expected[] = { 0.2553318, -0.1678906, 0.1486, -0.2792, 0.1738216, -0.1670382, -0.0283, 0.0421, 0.151683, -0.083199, -0.046, -0.157 };
  3336.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3337.    {
  3338.      int i;
  3339.      for (i = 0; i < 6; i++) {
  3340.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1805) real");
  3341.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1805) imag");
  3342.      };
  3343.    };
  3344.   };
  3345.  
  3346.  
  3347.   {
  3348.    int order = 101;
  3349.    int side = 142;
  3350.    int uplo = 121;
  3351.    int trans = 112;
  3352.    int diag = 131;
  3353.    int M = 2;
  3354.    int N = 3;
  3355.    double alpha[2] = {-0.3, 0.1};
  3356.    double A[] = { -0.416, -0.424, -0.088, 0.614, -0.371, 0.983, -0.737, -0.647, 0.321, -0.518, 0.058, -0.533, 0.153, 0.283, 0.342, 0.993, -0.071, 0.225 };
  3357.    int lda = 3;
  3358.    double B[] = { -0.09, -0.844, -0.707, 0.903, 0.632, -0.294, -0.558, 0.74, -0.99, -0.855, -0.189, 0.543 };
  3359.    int ldb = 3;
  3360.    double B_expected[] = { 0.1668304, -0.2576208, -0.0664464, -0.0785782, -0.0226908, -0.0467944, -0.1091876, 0.3667652, 0.1076073, -0.1594011, 0.0407346, 0.0134478 };
  3361.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3362.    {
  3363.      int i;
  3364.      for (i = 0; i < 6; i++) {
  3365.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1806) real");
  3366.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1806) imag");
  3367.      };
  3368.    };
  3369.   };
  3370.  
  3371.  
  3372.   {
  3373.    int order = 101;
  3374.    int side = 142;
  3375.    int uplo = 121;
  3376.    int trans = 112;
  3377.    int diag = 132;
  3378.    int M = 2;
  3379.    int N = 3;
  3380.    double alpha[2] = {-0.3, 0.1};
  3381.    double A[] = { -0.67, -0.423, -0.165, 0.157, -0.43, 0.674, -0.35, 0.434, 0.972, -0.116, -0.029, 0.316, 0.914, 0.321, 0.132, 0.034, -0.907, -0.401 };
  3382.    int lda = 3;
  3383.    double B[] = { -0.396, 0.71, -0.588, 0.709, -0.024, -0.704, -0.988, 0.656, 0.665, -0.085, -0.778, 0.264 };
  3384.    int ldb = 3;
  3385.    double B_expected[] = { -0.1010812, -0.2287206, 0.0372688, -0.2530336, 0.0776, 0.2088, 0.264679, -0.133739, -0.147391, 0.161965, 0.207, -0.157 };
  3386.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3387.    {
  3388.      int i;
  3389.      for (i = 0; i < 6; i++) {
  3390.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1807) real");
  3391.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1807) imag");
  3392.      };
  3393.    };
  3394.   };
  3395.  
  3396.  
  3397.   {
  3398.    int order = 101;
  3399.    int side = 142;
  3400.    int uplo = 122;
  3401.    int trans = 112;
  3402.    int diag = 131;
  3403.    int M = 2;
  3404.    int N = 3;
  3405.    double alpha[2] = {-0.3, 0.1};
  3406.    double A[] = { 0.756, -0.149, -0.706, -0.162, -0.145, 0.67, 0.416, -0.27, -0.916, 0.995, -0.863, -0.25, -0.079, 0.248, -0.191, -0.195, 0.981, 0.834 };
  3407.    int lda = 3;
  3408.    double B[] = { 0.329, 0.921, -0.018, -0.02, 0.095, -0.892, -0.105, -0.799, -0.583, 0.564, -0.436, 0.965 };
  3409.    int ldb = 3;
  3410.    double B_expected[] = { -0.1805114, -0.1555812, -0.1560482, -0.0462226, -0.0967127, 0.2921239, 0.1183692, 0.1566766, 0.2260429, 0.3915667, 0.1788155, -0.2682995 };
  3411.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3412.    {
  3413.      int i;
  3414.      for (i = 0; i < 6; i++) {
  3415.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1808) real");
  3416.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1808) imag");
  3417.      };
  3418.    };
  3419.   };
  3420.  
  3421.  
  3422.   {
  3423.    int order = 101;
  3424.    int side = 142;
  3425.    int uplo = 122;
  3426.    int trans = 112;
  3427.    int diag = 132;
  3428.    int M = 2;
  3429.    int N = 3;
  3430.    double alpha[2] = {-0.3, 0.1};
  3431.    double A[] = { 0.552, -0.668, -0.013, 0.088, -0.766, 0.977, 0.088, -0.06, -0.311, 0.872, -0.328, -0.01, 0.659, -0.327, -0.276, 0.553, -0.734, -0.079 };
  3432.    int lda = 3;
  3433.    double B[] = { -0.87, 0.728, 0.997, -0.36, -0.046, -0.505, 0.082, -0.787, 0.414, 0.965, -0.048, -0.591 };
  3434.    int ldb = 3;
  3435.    double B_expected[] = { 0.1882, -0.3054, -0.2648624, 0.1695328, 0.0462155, -0.3187195, 0.0541, 0.2443, -0.2012812, -0.2298476, 0.3871505, 0.2622315 };
  3436.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3437.    {
  3438.      int i;
  3439.      for (i = 0; i < 6; i++) {
  3440.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1809) real");
  3441.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1809) imag");
  3442.      };
  3443.    };
  3444.   };
  3445.  
  3446.  
  3447.   {
  3448.    int order = 102;
  3449.    int side = 142;
  3450.    int uplo = 121;
  3451.    int trans = 112;
  3452.    int diag = 131;
  3453.    int M = 2;
  3454.    int N = 3;
  3455.    double alpha[2] = {-0.3, 0.1};
  3456.    double A[] = { 0.349, -0.072, 0.545, 0.212, -0.306, -0.009, 0.757, -0.925, 0.159, 0.308, 0.476, 0.1, 0.725, -0.757, -0.245, 0.571, 0.515, 0.993 };
  3457.    int lda = 3;
  3458.    double B[] = { 0.865, 0.501, 0.165, -0.63, -0.513, 0.351, -0.521, -0.062, 0.54, -0.634, -0.719, 0.216 };
  3459.    int ldb = 2;
  3460.    double B_expected[] = { -0.054193, 0.023274, 0.1487731, -0.3509657, -0.0481592, -0.1044386, 0.0666567, 0.1890461, -0.2932696, 0.0278532, 0.2357046, 0.1223408 };
  3461.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3462.    {
  3463.      int i;
  3464.      for (i = 0; i < 6; i++) {
  3465.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1810) real");
  3466.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1810) imag");
  3467.      };
  3468.    };
  3469.   };
  3470.  
  3471.  
  3472.   {
  3473.    int order = 102;
  3474.    int side = 142;
  3475.    int uplo = 121;
  3476.    int trans = 112;
  3477.    int diag = 132;
  3478.    int M = 2;
  3479.    int N = 3;
  3480.    double alpha[2] = {-0.3, 0.1};
  3481.    double A[] = { 0.941, -0.496, 0.492, 0.356, 0.353, 0.346, -0.519, -0.86, -0.677, -0.154, 0.313, 0.228, -0.56, -0.451, -0.78, 0.174, -0.663, 0.22 };
  3482.    int lda = 3;
  3483.    double B[] = { 0.162, -0.345, 0.188, 0.578, -0.675, 0.775, -0.018, 0.198, -0.222, -0.52, 0.672, -0.438 };
  3484.    int ldb = 2;
  3485.    double B_expected[] = { -0.3430472, 0.0394834, 0.0185782, -0.1505014, 0.0092108, -0.3837276, 0.0741276, -0.2435652, 0.1186, 0.1338, -0.1578, 0.1986 };
  3486.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3487.    {
  3488.      int i;
  3489.      for (i = 0; i < 6; i++) {
  3490.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1811) real");
  3491.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1811) imag");
  3492.      };
  3493.    };
  3494.   };
  3495.  
  3496.  
  3497.   {
  3498.    int order = 102;
  3499.    int side = 142;
  3500.    int uplo = 122;
  3501.    int trans = 112;
  3502.    int diag = 131;
  3503.    int M = 2;
  3504.    int N = 3;
  3505.    double alpha[2] = {-0.3, 0.1};
  3506.    double A[] = { 0.592, 0.708, 0.442, 0.212, 0.815, -0.638, 0.55, -0.512, -0.487, 0.181, 0.708, -0.126, 0.408, -0.51, 0.175, 0.114, -0.919, -0.268 };
  3507.    int lda = 3;
  3508.    double B[] = { 0.858, -0.004, 0.59, -0.395, -0.943, 0.824, 0.01, 0.455, -0.775, 0.062, -0.644, 0.03 };
  3509.    int ldb = 2;
  3510.    double B_expected[] = { -0.21374, -0.130452, -0.20707, 0.00773, -0.16787, 0.186571, -0.05026, 0.106515, -0.2887485, -0.0045065, -0.2446935, 0.1590455 };
  3511.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3512.    {
  3513.      int i;
  3514.      for (i = 0; i < 6; i++) {
  3515.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1812) real");
  3516.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1812) imag");
  3517.      };
  3518.    };
  3519.   };
  3520.  
  3521.  
  3522.   {
  3523.    int order = 102;
  3524.    int side = 142;
  3525.    int uplo = 122;
  3526.    int trans = 112;
  3527.    int diag = 132;
  3528.    int M = 2;
  3529.    int N = 3;
  3530.    double alpha[2] = {-0.3, 0.1};
  3531.    double A[] = { -0.988, -0.915, 0.963, 0.103, 0.921, 0.555, 0.846, 0.148, -0.43, 0.336, -0.371, 0.381, -0.487, 0.717, 0.881, -0.777, 0.774, -0.962 };
  3532.    int lda = 3;
  3533.    double B[] = { -0.805, 0.605, 0.481, 0.163, -0.057, -0.017, -0.886, 0.809, 0.875, 0.905, 0.095, 0.894 };
  3534.    int ldb = 2;
  3535.    double B_expected[] = { 0.181, -0.262, -0.1606, -0.0008, 0.220089, -0.234263, 0.0303246, -0.3486122, -0.0476352, -0.3174616, -0.2077412, -0.1552106 };
  3536.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3537.    {
  3538.      int i;
  3539.      for (i = 0; i < 6; i++) {
  3540.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1813) real");
  3541.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1813) imag");
  3542.      };
  3543.    };
  3544.   };
  3545.  
  3546.  
  3547.   {
  3548.    int order = 101;
  3549.    int side = 141;
  3550.    int uplo = 121;
  3551.    int trans = 113;
  3552.    int diag = 131;
  3553.    int M = 2;
  3554.    int N = 3;
  3555.    double alpha[2] = {-0.3, 0.1};
  3556.    double A[] = { -0.513, -0.385, -0.524, 0.726, 0.823, 0.839, -0.355, -0.881 };
  3557.    int lda = 2;
  3558.    double B[] = { -0.707, 0.016, 0.481, 0.935, 0.052, 0.719, 0.277, 0.169, 0.894, 0.352, -0.216, -0.741 };
  3559.    int ldb = 3;
  3560.    double B_expected[] = { -0.078919, 0.119774, 0.2114654, 0.0276682, 0.12593, 0.074299, -0.109352, -0.193196, 0.077864, 0.032876, -0.3330992, 0.2249494 };
  3561.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3562.    {
  3563.      int i;
  3564.      for (i = 0; i < 6; i++) {
  3565.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1814) real");
  3566.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1814) imag");
  3567.      };
  3568.    };
  3569.   };
  3570.  
  3571.  
  3572.   {
  3573.    int order = 101;
  3574.    int side = 141;
  3575.    int uplo = 121;
  3576.    int trans = 113;
  3577.    int diag = 132;
  3578.    int M = 2;
  3579.    int N = 3;
  3580.    double alpha[2] = {-0.3, 0.1};
  3581.    double A[] = { -0.136, -0.37, 0.669, -0.731, -0.4, 0.638, 0.833, -0.29 };
  3582.    int lda = 2;
  3583.    double B[] = { -0.861, -0.278, 0.941, 0.822, 0.88, 0.501, 0.911, -0.502, 0.573, -0.498, -0.517, -0.518 };
  3584.    int ldb = 3;
  3585.    double B_expected[] = { 0.2861, -0.0027, -0.3645, -0.1525, -0.3141, -0.0623, -0.0297254, 0.4490328, -0.254473, -0.161772, 0.0423084, -0.1675858 };
  3586.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3587.    {
  3588.      int i;
  3589.      for (i = 0; i < 6; i++) {
  3590.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1815) real");
  3591.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1815) imag");
  3592.      };
  3593.    };
  3594.   };
  3595.  
  3596.  
  3597.   {
  3598.    int order = 101;
  3599.    int side = 141;
  3600.    int uplo = 122;
  3601.    int trans = 113;
  3602.    int diag = 131;
  3603.    int M = 2;
  3604.    int N = 3;
  3605.    double alpha[2] = {-0.3, 0.1};
  3606.    double A[] = { 0.641, -0.058, 0.246, 0.884, -0.686, 0.123, -0.869, 0.891 };
  3607.    int lda = 2;
  3608.    double B[] = { 0.107, -0.333, 0.556, 0.124, 0.206, 0.049, -0.573, -0.9, -0.417, -0.734, -0.719, 0.76 };
  3609.    int ldb = 3;
  3610.    double B_expected[] = { -0.1591469, -0.1071617, -0.2301499, -0.1454657, -0.1758188, 0.1884616, -0.0380754, -0.4181892, -0.013453, -0.33198, -0.3886102, 0.1361404 };
  3611.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3612.    {
  3613.      int i;
  3614.      for (i = 0; i < 6; i++) {
  3615.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1816) real");
  3616.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1816) imag");
  3617.      };
  3618.    };
  3619.   };
  3620.  
  3621.  
  3622.   {
  3623.    int order = 101;
  3624.    int side = 141;
  3625.    int uplo = 122;
  3626.    int trans = 113;
  3627.    int diag = 132;
  3628.    int M = 2;
  3629.    int N = 3;
  3630.    double alpha[2] = {-0.3, 0.1};
  3631.    double A[] = { 0.083, 0.441, 0.995, 0.338, -0.988, -0.828, -0.254, -0.036 };
  3632.    int lda = 2;
  3633.    double B[] = { -0.792, 0.552, 0.033, -0.178, -0.225, 0.553, 0.348, 0.229, -0.151, -0.594, 0.711, -0.335 };
  3634.    int ldb = 3;
  3635.    double B_expected[] = { 0.3362416, -0.3167112, -0.2305904, -0.0177512, 0.0477576, -0.5068152, -0.1273, -0.0339, 0.1047, 0.1631, -0.1798, 0.1716 };
  3636.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3637.    {
  3638.      int i;
  3639.      for (i = 0; i < 6; i++) {
  3640.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1817) real");
  3641.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1817) imag");
  3642.      };
  3643.    };
  3644.   };
  3645.  
  3646.  
  3647.   {
  3648.    int order = 102;
  3649.    int side = 141;
  3650.    int uplo = 121;
  3651.    int trans = 113;
  3652.    int diag = 131;
  3653.    int M = 2;
  3654.    int N = 3;
  3655.    double alpha[2] = {-0.3, 0.1};
  3656.    double A[] = { 0.105, 0.584, -0.33, -0.182, -0.096, -0.257, 0.327, -0.123 };
  3657.    int lda = 2;
  3658.    double B[] = { -0.249, -0.274, -0.197, -0.899, 0.85, -0.318, 0.596, -0.237, 0.179, 0.046, -0.859, -0.459 };
  3659.    int ldb = 2;
  3660.    double B_expected[] = { 0.0441837, -0.0536099, -0.0065547, 0.1208159, 0.0819176, 0.1492908, -0.0917294, -0.0510192, -0.0037271, 0.0344777, 0.0974489, 0.0389047 };
  3661.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3662.    {
  3663.      int i;
  3664.      for (i = 0; i < 6; i++) {
  3665.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1818) real");
  3666.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1818) imag");
  3667.      };
  3668.    };
  3669.   };
  3670.  
  3671.  
  3672.   {
  3673.    int order = 102;
  3674.    int side = 141;
  3675.    int uplo = 121;
  3676.    int trans = 113;
  3677.    int diag = 132;
  3678.    int M = 2;
  3679.    int N = 3;
  3680.    double alpha[2] = {-0.3, 0.1};
  3681.    double A[] = { -0.972, 0.794, -0.968, -0.406, -0.2, -0.512, 0.436, 0.161 };
  3682.    int lda = 2;
  3683.    double B[] = { 0.817, -0.17, -0.613, -0.565, -0.494, 0.129, -0.593, -0.516, -0.695, -0.42, 0.848, 0.122 };
  3684.    int ldb = 2;
  3685.    double B_expected[] = { -0.2281, 0.1327, 0.2180776, -0.0351272, 0.1353, -0.0881, 0.2475472, 0.1823936, 0.2505, 0.0565, -0.345628, 0.165156 };
  3686.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3687.    {
  3688.      int i;
  3689.      for (i = 0; i < 6; i++) {
  3690.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1819) real");
  3691.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1819) imag");
  3692.      };
  3693.    };
  3694.   };
  3695.  
  3696.  
  3697.   {
  3698.    int order = 102;
  3699.    int side = 141;
  3700.    int uplo = 122;
  3701.    int trans = 113;
  3702.    int diag = 131;
  3703.    int M = 2;
  3704.    int N = 3;
  3705.    double alpha[2] = {-0.3, 0.1};
  3706.    double A[] = { 0.373, -0.316, -0.052, 0.025, -0.878, 0.612, 0.486, 0.953 };
  3707.    int lda = 2;
  3708.    double B[] = { -0.626, 0.408, 0.536, 0.66, -0.666, -0.127, 0.622, 0.036, -0.761, 0.773, -0.137, 0.074 };
  3709.    int ldb = 2;
  3710.    double B_expected[] = { 0.1214746, -0.0093742, -0.247838, 0.145962, 0.0994439, 0.0586017, -0.043453, 0.206241, 0.1510011, -0.0661437, -0.0178345, -0.0495635 };
  3711.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3712.    {
  3713.      int i;
  3714.      for (i = 0; i < 6; i++) {
  3715.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1820) real");
  3716.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1820) imag");
  3717.      };
  3718.    };
  3719.   };
  3720.  
  3721.  
  3722.   {
  3723.    int order = 102;
  3724.    int side = 141;
  3725.    int uplo = 122;
  3726.    int trans = 113;
  3727.    int diag = 132;
  3728.    int M = 2;
  3729.    int N = 3;
  3730.    double alpha[2] = {-0.3, 0.1};
  3731.    double A[] = { 0.621, -0.252, -0.942, 0.073, 0.416, -0.724, -0.972, 0.028 };
  3732.    int lda = 2;
  3733.    double B[] = { -0.006, 0.427, 0.292, -0.212, -0.319, -0.08, -0.401, 0.465, -0.493, -0.529, 0.003, -0.19 };
  3734.    int ldb = 2;
  3735.    double B_expected[] = { 0.0284232, -0.2112704, -0.0664, 0.0928, 0.0210696, 0.1558958, 0.0738, -0.1796, 0.1879327, 0.0541021, 0.0181, 0.0573 };
  3736.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3737.    {
  3738.      int i;
  3739.      for (i = 0; i < 6; i++) {
  3740.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1821) real");
  3741.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1821) imag");
  3742.      };
  3743.    };
  3744.   };
  3745.  
  3746.  
  3747.   {
  3748.    int order = 101;
  3749.    int side = 142;
  3750.    int uplo = 121;
  3751.    int trans = 113;
  3752.    int diag = 131;
  3753.    int M = 2;
  3754.    int N = 3;
  3755.    double alpha[2] = {-0.3, 0.1};
  3756.    double A[] = { -0.415, 0.215, 0.507, 0.094, 0.697, 0.633, 0.206, -0.383, -0.974, 0.734, -0.533, -0.15, -0.982, -0.232, -0.297, 0.501, -0.092, 0.663 };
  3757.    int lda = 3;
  3758.    double B[] = { 0.812, 0.323, 0.294, -0.423, -0.85, 0.043, -0.338, -0.568, 0.976, -0.375, 0.913, -0.119 };
  3759.    int ldb = 3;
  3760.    double B_expected[] = { 0.2153111, -0.0775367, 0.0404927, -0.0287599, -0.0879721, -0.1572073, -0.2481947, 0.2941819, 0.5234716, -0.1242382, 0.108305, 0.162022 };
  3761.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3762.    {
  3763.      int i;
  3764.      for (i = 0; i < 6; i++) {
  3765.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1822) real");
  3766.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1822) imag");
  3767.      };
  3768.    };
  3769.   };
  3770.  
  3771.  
  3772.   {
  3773.    int order = 101;
  3774.    int side = 142;
  3775.    int uplo = 121;
  3776.    int trans = 113;
  3777.    int diag = 132;
  3778.    int M = 2;
  3779.    int N = 3;
  3780.    double alpha[2] = {-0.3, 0.1};
  3781.    double A[] = { 0.827, -0.754, 0.719, 0.88, -0.942, -0.152, 0.051, 0.033, -0.603, -0.557, 0.668, 0.024, 0.082, 0.458, 0.733, 0.669, 0.722, -0.661 };
  3782.    int lda = 3;
  3783.    double B[] = { -0.523, 0.365, -0.811, -0.632, -0.06, 0.151, -0.962, -0.71, -0.543, 0.8, -0.264, 0.994 };
  3784.    int ldb = 3;
  3785.    double B_expected[] = { 0.4413193, -0.3047431, 0.307206, 0.074162, 0.0029, -0.0513, 0.2285887, 0.1349491, 0.061616, -0.510648, -0.0202, -0.3246 };
  3786.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3787.    {
  3788.      int i;
  3789.      for (i = 0; i < 6; i++) {
  3790.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1823) real");
  3791.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1823) imag");
  3792.      };
  3793.    };
  3794.   };
  3795.  
  3796.  
  3797.   {
  3798.    int order = 101;
  3799.    int side = 142;
  3800.    int uplo = 122;
  3801.    int trans = 113;
  3802.    int diag = 131;
  3803.    int M = 2;
  3804.    int N = 3;
  3805.    double alpha[2] = {-0.3, 0.1};
  3806.    double A[] = { 0.958, 0.948, -0.161, -0.34, -0.184, 0.43, -0.045, -0.465, -0.278, 0.461, 0.584, 0.003, -0.794, -0.778, -0.65, -0.91, 0.24, -0.944 };
  3807.    int lda = 3;
  3808.    double B[] = { 0.279, 0.041, -0.033, 0.332, 0.788, 0.611, -0.644, -0.133, 0.247, 0.06, 0.125, -0.407 };
  3809.    int ldb = 3;
  3810.    double B_expected[] = { -0.0693236, 0.0981792, -0.0442625, -0.0021815, 0.1936084, -0.3409328, 0.174601, -0.219233, 0.0274565, 0.1321885, -0.2252264, 0.1381888 };
  3811.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3812.    {
  3813.      int i;
  3814.      for (i = 0; i < 6; i++) {
  3815.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1824) real");
  3816.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1824) imag");
  3817.      };
  3818.    };
  3819.   };
  3820.  
  3821.  
  3822.   {
  3823.    int order = 101;
  3824.    int side = 142;
  3825.    int uplo = 122;
  3826.    int trans = 113;
  3827.    int diag = 132;
  3828.    int M = 2;
  3829.    int N = 3;
  3830.    double alpha[2] = {-0.3, 0.1};
  3831.    double A[] = { -0.983, -0.795, -0.115, -0.542, 0.837, 0.518, -0.164, 0.776, -0.453, -0.28, 0.135, -0.377, -0.199, -0.965, 0.784, -0.39, -0.499, 0.257 };
  3832.    int lda = 3;
  3833.    double B[] = { -0.712, 0.364, -0.28, 0.05, 0.314, 0.748, -0.719, 0.619, 0.474, -0.906, -0.859, 0.943 };
  3834.    int ldb = 3;
  3835.    double B_expected[] = { 0.1772, -0.1804, -0.0900512, -0.1509216, 0.0485292, 0.0109956, 0.1538, -0.2576, -0.2767208, 0.2420976, 0.2164354, 0.0610082 };
  3836.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3837.    {
  3838.      int i;
  3839.      for (i = 0; i < 6; i++) {
  3840.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1825) real");
  3841.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1825) imag");
  3842.      };
  3843.    };
  3844.   };
  3845.  
  3846.  
  3847.   {
  3848.    int order = 102;
  3849.    int side = 142;
  3850.    int uplo = 121;
  3851.    int trans = 113;
  3852.    int diag = 131;
  3853.    int M = 2;
  3854.    int N = 3;
  3855.    double alpha[2] = {-0.3, 0.1};
  3856.    double A[] = { 0.105, 0.503, -0.17, 0.2, -0.861, -0.279, -0.231, 0.058, 0.699, 0.437, 0.578, 0.462, 0.473, -0.793, -0.34, -0.162, -0.128, -0.844 };
  3857.    int lda = 3;
  3858.    double B[] = { -0.802, 0.292, -0.155, -0.916, -0.099, -0.082, 0.057, 0.215, 0.94, 0.911, -0.714, 0.41 };
  3859.    int ldb = 2;
  3860.    double B_expected[] = { -0.1044001, -0.5102243, 0.3865174, 0.0189802, 0.1888166, -0.0057672, -0.0800722, 0.0699214, 0.199086, -0.291946, 0.141904, 0.171064 };
  3861.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3862.    {
  3863.      int i;
  3864.      for (i = 0; i < 6; i++) {
  3865.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1826) real");
  3866.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1826) imag");
  3867.      };
  3868.    };
  3869.   };
  3870.  
  3871.  
  3872.   {
  3873.    int order = 102;
  3874.    int side = 142;
  3875.    int uplo = 121;
  3876.    int trans = 113;
  3877.    int diag = 132;
  3878.    int M = 2;
  3879.    int N = 3;
  3880.    double alpha[2] = {-0.3, 0.1};
  3881.    double A[] = { 0.468, 0.378, -0.498, 0.251, 0.777, -0.543, -0.913, 0.095, 0.779, -0.933, 0.068, -0.669, 0.715, 0.03, 0.012, 0.392, -0.785, -0.056 };
  3882.    int lda = 3;
  3883.    double B[] = { 0.143, -0.242, -0.379, -0.831, -0.46, -0.663, -0.735, -0.098, -0.861, -0.894, 0.772, -0.059 };
  3884.    int ldb = 2;
  3885.    double B_expected[] = { 0.0633681, 0.0476643, -0.1761819, 0.3044093, 0.2798556, 0.0187868, 0.2647924, 0.0455132, 0.3477, 0.1821, -0.2257, 0.0949 };
  3886.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3887.    {
  3888.      int i;
  3889.      for (i = 0; i < 6; i++) {
  3890.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1827) real");
  3891.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1827) imag");
  3892.      };
  3893.    };
  3894.   };
  3895.  
  3896.  
  3897.   {
  3898.    int order = 102;
  3899.    int side = 142;
  3900.    int uplo = 122;
  3901.    int trans = 113;
  3902.    int diag = 131;
  3903.    int M = 2;
  3904.    int N = 3;
  3905.    double alpha[2] = {-0.3, 0.1};
  3906.    double A[] = { -0.764, 0.908, 0.899, 0.119, -0.447, 0.279, 0.338, 0.73, -0.74, -0.366, -0.572, 0.583, 0.75, 0.519, 0.603, 0.831, 0.697, 0.822 };
  3907.    int lda = 3;
  3908.    double B[] = { 0.399, 0.572, -0.489, 0.964, -0.167, -0.104, 0.75, -0.199, 0.777, 0.503, -0.025, -0.386 };
  3909.    int ldb = 2;
  3910.    double B_expected[] = { 0.015568, 0.261244, -0.345424, 0.212636, -0.2247824, -0.0859342, 0.1074596, -0.4846822, -0.2415227, 0.2465939, 0.2042976, 0.2206978 };
  3911.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3912.    {
  3913.      int i;
  3914.      for (i = 0; i < 6; i++) {
  3915.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1828) real");
  3916.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1828) imag");
  3917.      };
  3918.    };
  3919.   };
  3920.  
  3921.  
  3922.   {
  3923.    int order = 102;
  3924.    int side = 142;
  3925.    int uplo = 122;
  3926.    int trans = 113;
  3927.    int diag = 132;
  3928.    int M = 2;
  3929.    int N = 3;
  3930.    double alpha[2] = {-0.3, 0.1};
  3931.    double A[] = { 0.432, 0.063, 0.065, -0.546, 0.099, 0.892, 0.48, -0.085, 0.746, -0.541, -0.739, -0.207, 0.695, 0.765, 0.197, -0.86, 0.621, -0.653 };
  3932.    int lda = 3;
  3933.    double B[] = { 0.182, 0.731, 0.571, 0.01, -0.357, -0.612, 0.581, 0.756, -0.911, -0.225, 0.438, 0.546 };
  3934.    int ldb = 2;
  3935.    double B_expected[] = { -0.1277, -0.2011, -0.1723, 0.0541, 0.2698001, 0.0651043, -0.2906381, -0.2592593, -0.0512125, -0.0040605, 0.0647965, 0.1119875 };
  3936.    cblas_ztrmm(order, side, uplo, trans, diag, M, N, alpha, A, lda, B, ldb);
  3937.    {
  3938.      int i;
  3939.      for (i = 0; i < 6; i++) {
  3940.        gsl_test_rel(B[2*i], B_expected[2*i], dbleps, "ztrmm(case 1829) real");
  3941.        gsl_test_rel(B[2*i+1], B_expected[2*i+1], dbleps, "ztrmm(case 1829) imag");
  3942.      };
  3943.    };
  3944.   };
  3945.  
  3946.  
  3947. }
  3948.